Ir ao conteúdo
  • Cadastre-se

Stroligo

Membro Júnior
  • Posts

    12
  • Cadastrado em

  • Última visita

Reputação

0
  1. Sim, obrigado pela resposta, me esclareceu algumas coisas mas acho que nao ficou claro a minha duvida. No primeiro caso (quando utilizei o %d no lugar da variavel) ja imaginei que daria errado por esse motivo, mas nao custava tentar. O segundo caso deu parcialmente certo, no entanto deu o erro que deu. voce explicou muito bem o porque do erro, das comparacoes e tal, mas minha duvida e: Como fazer essa comparacao, onde uma variavel que e declarada como int/float e recebe um valor char? No caso eu queria que o programa terminasse ao receber uma letra em vez de numero. Por isso fiz o while que funcionaria enquanto o valor recebido estivesse entre qualquer valor numerico ( (num>=0) || (num<0) ) Espero que minha duvida esteja clara agora Vou deixar o codigo aqui pro caso de nao ter ficado claro, com o codigo provavelmente vai entender a logica que to usando e o proposito disso: #include <stdio.h>#include <stdlib.h>#include <math.h>int main (){ float nota1, nota2,media; int apv=0,rpv=0; while ((nota1 >= 0) || (nota2 >= 0) || (nota1 <= 0) || (nota2 <= 0) || (nota1 = 0) || (nota2 = 0)) { printf("Insira as duas notas ...: "); scanf(" %f %f", &nota1, &nota2); media = (nota1+nota2)/2; if (media < 60) { printf("REPROVADO\n\n\n"); rpv++; } else { printf("APROVADO\n\n\n"); apv++; } } printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n..........DADOS COLETADOS.......... "); printf("\n\nAprovados .......: %d",apv); printf("\nReprovados ......: %d\n\n", rpv); printf("................FIM................\n\n"); return(0);}
  2. Quer aprender C# ne? Recomendo que procure por tutoriais no proprio youtube, existe um professor muito bem qualificado que fez milhares de video aulas e as postou no youtube, quando digo milhares nao é exagero, sao mais de mil. Nao tenho certeza se tem sobre C#, mas é provavel que sim, procure no youtube por Neri C#, o nome do canal e Neri Neitzke, se esse nao lhe agradar procure por "tutoriais C#" que você encontra facilmente. abraços e espero ter ajudado.
  3. Ola! Bom dia, boa tarde e boa noite. Eu estou iniciando meu aprendizado e estou seguindo uma apostila sobre logica de programacao. Atualmente estou na parte de lacos de repeticao while e do/while e estou com uma duvida. Cheguei num exercicio onde insiro dois valores numericos (int ou float) e realizo a media aritmetica, então eu preciso criar um while que pare de repetir assim que eu entrar com um dado diferente de um valor numerico (%d ou %f), então tentei da seguinte forma: while ((nota 1 = %f) || (nota2 = %f) || (nota1 = %d) || (nota2 = %d)) {....} obs: as variaveis foram declaradas em formato float. Constatei que nao funcionava, e tentei de outra forma: while ((nota1 >= 0) || (nota2 >= 0) || (nota1 <= 0) || (nota1 <= 0) || (nota1 = 0) || (nota2 = 0)) {....} A principio, o programa compilou direitinho e rodou, e eu inseria os valores (notas) so que na hora que eu precisava finalizar o while para terminar de calcular as medias e prosseguir com o programa veio o problema, qualquer valor %c que eu entrava ele bugava e repetia a frase do printf milhares de vezes ate eu fechar o programa. Eu ate tentei entrar com um if com as mesmas expressoes do while e caso acontecesse eu dava um comando (return0), e dessa vez eu colocava duas notas e o programa terminava sem executar o laco de repeticao. Se alguem puder me ajudar, ficaria extremamente grato. abraços!

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...