Ir ao conteúdo
  • Cadastre-se

Jessé P. de Melo

Membro Pleno
  • Posts

    94
  • Cadastrado em

  • Última visita

Tudo que Jessé P. de Melo postou

  1. A ta entendi ! Não posso usar return com variáveis que não sejam numero. Estou fazendo outros exercicios quando conseguir terminar posto aqui !
  2. Bom dia ! Estou fazendo o seguinte exercício: Faca uma funcao que receba a data atual (dia, m ˜ es e ano em inteiro) e exiba-a na tela ˆ no formato textual por extenso. Exemplo: Data: 01/01/2000, Imprimir: 1 de janeiro de 2000. #include<stdio.h> #include<stdlib.h> #include<string.h> char converte(int x){ char meses[17]; switch(x){ case 1 :strcpy(meses,"Janeiro\0");break; case 2 :strcpy(meses,"Fevereiro\0");break; case 3 :strcpy(meses,"Marco\0");break; case 4 :strcpy(meses,"Abril\0");break; case 5 :strcpy(meses,"Maio\0");break; case 6 :strcpy(meses,"Junho\0");break; case 7 :strcpy(meses,"Julho\0");break; case 8 :strcpy(meses,"Agosto\0");break; case 9 :strcpy(meses,"Setembro\0");break; case 10 :strcpy(meses,"Outubro\0");break; case 11 :strcpy(meses,"Novembro\0");break; case 12 :strcpy(meses,"Dezembro\0");break; default :strcpy(meses,"Mes inexistente\0"); } return meses[0]; } int main(){ int dia=0; int mes=0; int ano=0; printf("Digita data (dd/mm/aaaa): "); scanf("%i/%i/%i",&dia,&mes,&ano); setbuf(stdin,NULL); printf ("%i de %s de %i",dia,converte(mes),ano); system("pause"); return 0; } porém não esta dando o ultimo printf, como não esta dando erro no compilador não sei onde mexer.
  3. Sim mas porque meu algoritmo esta dando erro só na primeira posição ?
  4. o codigo ficou assim ! Vou fazer uma lista ordenada! #include <stdio.h> #include <string.h> #include <conio.h> int main() { int i=0; int idade[10]; int troca_idade; char nome[10][20]; char troca_nome[20]; for (i=0;i<10;i++){ printf("Digite o %i nome:",i); scanf("%s",&nome[i]); setbuf(stdin,NULL); printf("Digite a idade:"); scanf("%i",&idade[i]); setbuf(stdin,NULL); if (idade[i]<0){ break; } } for(i=0;i<9;i++){ if (idade[i]<idade[i+1]){ // Se a posição atual for menor que a seguinte não faz nada, se for diferente começa.Lembrando que estou espelhando a posição da idade com os nomes. } else{ troca_idade=idade[i];//troca_idade esta com maior valor strcpy(troca_nome, nome[i]); idade[i]=idade[i+1];//idade[i] esta com o valor menor strcpy(nome[i],nome[i+1]); idade[i+1]=troca_idade; //A posição a frente (i+1) esta com o maior vetor strcpy(nome[i+1],troca_nome); i=0; //Se for feita uma alteração zera o contador, para refericação de todo o vetor novamente, só sai do loop quando na mudar nada de lugar. } } printf("\n"); for (i=0;i<10;i++){ printf("idade:%i nome:%s\n",idade[i],nome[i]); } return 0; } porém não esta da maneira que gostaria. Quando tem que realizar muitos calculos com a primeira posição [0] fica errado, só muda de lugar umas 2 vezes.
  5. Boa tarde. Estou fazendo um exercício, desenvolvi uma solução porém não esta funcionando, estou há alguns dias tentando resolver porém empaquei. Escreva um programa que leia a idade e o primeiro nome de 10 pessoas. Seu programa deve terminar quando uma idade negativa for digitada. Ao terminar, seu programa deve escrever o nome e a idade das pessoas mais jovens e mais velhas. #include <stdio.h> #include <string.h> #include <conio.h> int main() { int i=0; int idade[10]; int troca_idade; char nome[10][20]; char troca_nome[20]; for (i=0;i<10;i++){ printf("Digite o %i nome: ",i); fgets(nome[i],20,stdin); setbuf(stdin,NULL); printf("Digite a idade: "); scanf("%i",&idade[i]); setbuf(stdin,NULL); if (idade[i]<0){ break; } } for(i=0;i<10;i++){ if (idade[i]<idade[i+1]){ // Se a posição atual for menor que a seguinte não faz nada, se for diferente começa.Lembrando que estou espelhando a posição da idade com os nomes. } else{ troca_idade=idade[i];//troca_idade esta com maior valor // troca_nome=nome[0]; strcpy(troca_nome, nome[i]); idade[i]=idade[i+1];//idade[i] esta com o valor menor //nome[i]=troca_nome[0]; strcpy(nome[i],nome[i+1]); idade[i+1]=troca_idade; //A posição a frente (i+1) esta com o maior vetor //nome[i+1]=troca_nome[0]; strcpy(nome[i+1],troca_nome); printf("\n%i",i); i=0; //Se for feita uma alteração zera o contador, para refericação de todo o vetor novamente, só sai do loop quando na mudar nada de lugar. } } for (i=0;i<10;i++){ printf("idade: %i nome: %s ",idade[i],nome[i]); } return 0; } A logica e a seguinte, se a posição posterior for maior que a atual ambas trocam de valor, a cada vez que troca zera o contador, para reverificar tudo, só sai do Loop quando não fizer mais nenhuma modificação ! Acredito que o problema esteja no contador i do FOR, quando mando imprimir só aparece o valor 2. Sei que é um problema simples e banal, mas fiquei alguns dias tentando resolver. E as soluções que tento esta dando perigo no compilador, nem chego a testa-las.
  6. Boa tarde @herbertbahia , como resolve eu ja sabia ! Mas queria entender o motivo de acontecer isso! Mas ja descobri, o scanf não lê caracteres invisíveis dentre eles o espaço resolvi utilizando fgets.
  7. Bom dia. Estou fazendo o seguinte exercicio: Ler uma frase e contar quantos caracteres sao espaços em brancos. Desenvolvi a seguinte solução: #include <stdio.h> #include <string.h> #include <conio.h> int main() { char palavra[20]; int esp=32; int cont=0; int espaco=0; printf("Digite uma frase: "); scanf("%s",palavra); while(palavra[cont]!='\0'){ if(palavra[cont]==esp){ espaco++; } cont++; } printf("Numero de espaco e': %d",espaco); return 0; } porém não esta funcionando, contudo se trocar a linha do scanf por gets(palavra) funciona normalmente. o que acontece se os dois são para pegar strings.
  8. Não consegui fazer... E é horrível tentar explicar por uma caixa de texto, ainda mais quando tentei deixar o site sofisticado de mais para meus conhecimentos. Segue link (google divre) de como esta atualmente. A parte relativa a isso está na linha 213 do Css. Tentei usar a section principal com uma margem para colar o background na região certa. Não funcionou. #conteiner_servicos div:first-child:hover ~ .sections{ margin-top:-100vh; background-image: url("../imagens/Sites.png"); background-size: cover; } Outra maneira que tentei foi usar o Id referente div região, mas também não funcionou. #conteiner_servicos div:first-child:hover ~ #servicosjs{ background-image: url("../imagens/Sites.png"); background-size: cover; } Pensei que pudesse estar relacionado ao posicionamento porém não identifico o erro, porque já foi definido tudo antes, tanto é que aceitou isso sem problemas. #servicosjs{ background-image: url("../imagens/Servicos.png"); background-size: cover; background-repeat: no-repeat; align-items: center; } Quero que quando passe o mouse nos itens da pagina serviços o plano de fundo mude. Poderia fazer para mim analisar o seu código? Estou me esforçando ao máximo mas esta travado. E o pior de tudo é que quando terminar ainda tenho que deixar responsivo, fiz com valores relativos mas está dando errado com telas pequenas.
  9. Pesquisando aqui achei uma solução plausível mas não consigo implementá-la. Ficaria assim: .item:hover ~ div{ background-image:url(exemplo.jpg); } mas continua sem ir.
  10. Uma outra duvida. Sabe me dizer como mudo o plano de fundo do site quando passo o mouse em cima de uma div? exemplo: .item:hover{ background-image(exemplo.jpg) } Esse código muda o plano de fundo da div e não o principal.
  11. Muito obrigado. Eu estudei isso ha muito tempo porém nunca pratiquei efetivamente. Agora estou sofrendo bastante... Minha intenção é quando a pessoa clicar em submit vai carregar uma pagina php que vai se carregada dentro dessa div e enviar tudo para o email predefinido. Apos isso vai ou Abrir um alert do js escrito enviado que vai limpar todos os campos, ou vai carregar uma pagina na div do form que só vai exibir enviado, um empecilho é que vai fica travado nessa pagina. o que você acha da ideia? Tem uma maneira melhor de se resolver isso?
  12. Olá foi definido no trecho. Aqui o display esta errado mas já corrigi e teste, continua dando o mesmo problema. Tudo funciona como esperado quando retiro o form , o problema esta no form ou melhor não sei como usar o css para resolver.
  13. Boa tarde.Sou novato em programação e estou tentando resolver um exercício. Faça um framework de site onepage, dividido em três subseções home, serviços e fale conosco. Estou com problema com a subseção fale conosco, ela não esta aparecendo os itens do formulário. Segue código html: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Confeitaria</title> <link rel="stylesheet" type="text/css" href="css/style.css"> </head> <body> <nav class="links"> <label for="rd_home">Home</label> <label for="rd_servicos">Serviços</label> <label for="rd_fale_conosco">Fale Conosco</label> </nav> <div class="scroll"> <input type="radio" name="grupo" id="rd_home" checked="true"> <input type="radio" name="grupo" id="rd_servicos"> <input type="radio" name="grupo" id="rd_fale_conosco"> <div class="sections"> <div class="bloco" id="homejs"> <div id="conteiner_home"> <H1>Padaria</H1> <br> <p>Fazemos todo tipo de paes e guloseimas </p> </div> </div> <div class="bloco" id="servicosjs"> <div id="conteiner_servicos"> <article class="item"> <h3>Doces</h3> <br> <p>Fazemos trufas, paes de mel, brigadeiro e tudo.</p> <br> <br> <h2>R$ 3,00</h2> </article> <article class="item"> <h3>Salgados</h3> <br> <p>Fazemos coxinhas, esfirras, risoles e tudo.</p> <br> <br> <h2>R$ 4,00</h2> </article> <article class="item"> <h3>Confeitarial</h3> <br> <p>Fazemos bolos de todos tipo e tamanhos</p> <br> <h2> RS 100,00</h2> </article> </div> </div> <div class="bloco" id="fale_conoscojs"> <div id=> <form name="fomrcontato" action="" method="post"> <h1>Contato</h1> <p class="nome"> <input type="text" name="nome" placeholder="Infomme seu nome" required="required"> </p> <p class="assunto"> <input type="text" name="assunto" placeholder="Sobre o que quer falar" required="required"> </p> <p> <textarea name="mesagem" placeholder="Deixe sua mensagem"></textarea> </p> <p class="enviar"> <input type="submit" name="enviar" value="enviar"> </p> </form> </div> </div> </div> </div> </body> </html> Segue codigo CSS: *{ margin: 0; padding: 0; } .links{ width: 100vw; height: 50px; position: fixed; display: flex; } .links label{ padding: 10px 0; flex-grow: 1; cursor: pointer; transition: all .4s; text-align: center; font-family: 'Arial'; font-size: 100%; color: #fff; } .links label:hover{ background-color: rgba(255,255,255,.3); } .scroll input { display: none; } .bloco{ width: 100vw; height: 100vh; display; flex; } .scroll{ display: flex; width: 100vw; height: 100vh; overflow: hidden; } .sections{ transition: all .4s; } .item{ margin: 20px; padding: 10px; align-items: center; height: 45vh; width: 75vw; background-color: rgba(211,211,211,.8); border-radius: 30px; } .item h3{ text-align: center; } .item p{ text-align: justify; margin-top: 5vh; margin-bottom: 5vh; } .item h2{ text-align: center; } #homejs{ background-color: #7fbd42; /*background: url("../imagens/Home_page.png");*/ background-size: cover; background-repeat: no-repeat; } #servicosjs{ /*background: url("../imagens/Servicos.png");*/ background-size: cover; background-repeat: no-repeat; align-items: center; } #precojs{ background-color: #414950; } #fale_conoscojs{ background-color: #aaa; /*background: url("../imagens/Fale_conosco.png");*/ background-size: cover; background-repeat: no-repeat; } #rd_home:checked ~ .sections{ margin-top:0vh; } #rd_servicos:checked ~ .sections{ margin-top:-100vh; } #rd_fale_conosco:checked ~ .sections{ margin-top:-200vh; } #homejs h1{ position: relative; left: 45%; top: 40%; } #homejs p{ text-align: left; position: relative; left: 35%; top: 50%; } #conteiner_servicos { background-color: rgba(211,211,211,.3); align-items: center; width: 100vw; height: 100vh; display: flex; flex-direction: row; justify-content: flex-start; align-items: center; } #conteiner_home{ background-color: rgba(211,211,211,.3); width: 100vw; height: 100vh; } #fale_conosco{ position: relative; display: flex; justify-content: flex-start; align-items: center; margin-left: 20vw; flex-direction: row; height: 55vh; width: 65vw; border-radius: 30px; }
  14. Boa tarde! Estou planejando fazer um site simples. Tenho conhecimentos em HTML, HTML5 e CSS porém não tenho pratica, não consigo sair programando tudo na mão do zero mas consigo ler os srcipt. Sei que existem Framework mas não sei qual o melhor, qual o mais fácil de se trabalhar e se possível preciso de material de apoio em português. O único requisito é que o site seja responsivo, OnePage e mais nada. Por favor de os passos de maneira prescritiva, com a linha de passos a seguir de maneira clara. Desde já sou muito grato pela atenção.
  15. @bngomes Erro da minha parte então, tirei essa conclusão por dedução já char tem tamanho 1 e as vezes ao criar uma string uso: char c ="exemplo"; Esse código funciona recebe maior quantidade do que a prevista, e o que termina a string é um '\0'. Mais enfim sabe consertar o primeiro script com uso da biblioteca string?
  16. Bom dia. Estou resolvendo o seguinte exercício: Escreva uma função que receba um numero inteiro maior do que zero e retorne a soma de todos os seus algarismos. Por exemplo, ao numero 251 corresponder a o valor 8 (2 + 5 + 1). Se o numero lido não for maior do que zero, o programa terminar a com a mensagem “Numero invalido”. Desenvolvi a solução que segue, porém esta dando erro com funções da biblioteca string. #include<stdio.h> #include<stdlib.h> #include<string.h> int main (void){ int converte (char a); int tam; char texto; printf("Digite um numero: "); scanf("%s",&texto); printf("Soma: %i", converte(texto)); } int converte (char a){ int tam; int num; int num_intermediario; char intermediario[2]; tam=strlen(a); char texto1[tam]; strcpy(texto1,a); intermediario[1]='\0'; for (int x=0;x<tam;x++){ intermediario[0]=texto1[x]; num_intermediario=atoi(intermediario); num=num+num_intermediario; } return(num); } Pois bem! Pensei comigo mesmo é só não usar essas funções, ai modifiquei o a função, e ficou assim: int converte (char a){ int num; int num_intermediario; char intermediario[2]; intermediario[1]='\0'; for (int x=0;a[x]!='\0';x++){ intermediario[0]=a[x]; num_intermediario=atoi(intermediario); num=num+num_intermediario; } return(num); } E agora está me dando um erro falando que "a" não é array, toda char não é um array ate encontrar o limitador de quantidade ou um '\0' ? E como conserto a função com as bibliotecas strings para funcionar sem usar ponteiros essa é a lista de exercícios 7 - funções ponteiros é a lista 9.
  17. Existe algum lugar onde encontro a padronização do sistema? Sei que se da zero é porque funcionou corretamente, se retorna negativo e porque deu erro, se retorna positivo e porque concluiu com adversidades, onde encontro as referencias para saber qual foi a adversidade exemplo 21(0x15). Mas eu nem sabia que a main e necessariamente int.
  18. Porque o código abaixo da process returned 21(0x15) se a função main é void?? Pelo o que eu aprendi estudando por conta a main nem deveria retorna nada e muito menos o valor 21; #include<stdio.h> #include<stdlib.h> #include<math.h> void main(void){ float cateto_a=0; float cateto_b=0; float hipotenusa(float a, float b); printf("Digite o cateto A:"); scanf("%f",&cateto_a); printf("Digite o cateto B:"); scanf("%f",&cateto_b); printf("A hipotenusa e' %.2f",hipotenusa(cateto_a,cateto_b)); } float hipotenusa(float a, float b){ float hip=0; a=a*a; b=b*b; hip=sqrt(a+b); return(hip); }
  19. Fiz o exercício: Faça uma função que receba 3 números inteiros como paramentos, representando horas, minutos e segundos, e os converta em segundos. Código: #include<stdio.h> #include<stdlib.h> void main(void){ unsigned h,m,s; int conversor_hrs(int hrs, int minutos, int segundos); printf("Digite as horas: (HH-MM-SS) "); scanf("%u-%u-%u",&h,&m,&s); printf("O valor em segundos %i: ",conversor_hrs(h,m,s)); } int conversor_hrs(int hrs, int minutos, int segundos){ int total_segundos=0; total_segundos=(hrs*60*60)+(minutos*60)+segundos; return(total_segundos); } Minha duvida é tem como passar os parâmetros da função direto na chamada sem popular variáveis intermediarias? exemplo: conversor_hrs(scanf("%i"),scanf("%i"),scanf("%i"));
  20. Depois de muita luta terminei. Estava quase desistindo do exercício, fiquei gastando tempo e paciência tentando readequar meu código a solução proposta. Sendo que era muito mais simples começar a função do zero. Aparentemente esta funcionando e ficou assim: #include<stdio.h> #include<stdlib.h> int main(void){//2,3,5,7 int num; void quadrado_perfeito(int x); printf("Digite um numero para saber se e um quadrado perfeito: "); scanf("%i",&num); quadrado_perfeito(num); } void quadrado_perfeito(int x){ int n1=1; int n_total=1; int valida=0; while(n1<x){ n1+=2; n_total=n_total+n1; if (n_total==x){ valida=1; } } if (valida==1){ printf("E' quadrado perfeito"); } else{ printf("Nao e' quadrado perfeito"); } }
  21. Desculpe a demora. Disse que começaria estudar as 12:00 mas comecei depois da 13:00, alem do mais por algum motivo que eu não lembro qual eu queria desenvolver um bloco só para números compostos e números primos. Enfim só aumentei isso na função para realizar cálculos para números primos: int quadrado_perfeito(int x){ int soma_impares=1; while(soma_impares<x){ soma_impares+=2; } if(soma_impares==x){ printf("E' quadrado perfeito"); } } O código completo ficou: #include<stdio.h> #include<stdlib.h> int main(void){//2,3,5,7 int num; int quadrado_perfeito(int x); printf("Digite um numero para saber se e um quadrado perfeito: "); scanf("%i",&num); quadrado_perfeito(num); } int quadrado_perfeito(int x){ int soma_impares=1; int exp_n2=0; int exp_n3=0; int exp_n5=0; int exp_n7=0; int teste1=0; int teste2=0; int teste3=0; int teste4=0; while(soma_impares<x){ soma_impares+=2; } if(soma_impares==x){ printf("E' quadrado perfeito"); exit(0); } while(x>1){ while (x%2==0){ x=x/2; exp_n2++; } while (x%3==0){ x=x/3; exp_n3++; } while (x%5==0){ x=x/5; exp_n2++; } while (x%7==0){ x=x/7; exp_n7++; } } if(exp_n2==0||exp_n2%2==0){ teste1=1; } if(exp_n3==0||exp_n3%2==0){ teste2=1; } if(exp_n5==0||exp_n5%2==0){ teste3=1; } if(exp_n7==0||exp_n7%2==0){ teste4=1; } if(teste1&&teste2&teste3&&teste4==1){ printf("E' um quadrado perfeito"); } else{ printf("Nao e' um quadrado perfeito"); } }
  22. @isrnick Esse método parece bom. Eu pensei que ao fazer a verificação com números 2,3,5,7 seria o suficiente por que todos os que vem apos desses na fatoração poderiam ser divididos entre esses principais, se der você poderia ser mais claro ? porque fiz testes com o numero 81, depois (81*81)=6561 e depois com (6561*6561)=43046721 deram certo, no entanto o 43046720 ficou travado consumindo processador. Mas vejo isso só amanha, estou desde as 12:00 estudando.
  23. Eu não sabia, que dava criar um ponteiro e inserir dados ao mesmo tempo. No final virou um vetor normal só que sendo um ponteiro

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!