Logo Hardware.com.br
Philkins
Philkins Novo Membro Registrado
2 Mensagens 1 Curtida

[Resolvido] Ajuda em C

#1 Por Philkins 26/09/2016 - 23:01
Estou com um problema no meu IF, eu aplico a condição pra ele retornar caso seja verdadeira porem ele sempre retorna, mesmo sendo falsa. Segue a baixo o codigo



int aposta, num;

inicio:
printf("\nInforme a quantidade de numeros a serem jogados (Entre 6 e 15): ");
scanf("%f", &num);

if(num>=5 || num <=16){
printf("\nNumero invalido\n");
Sleep(1000);
system ("cls");
goto inicio;
}
inicio2:
printf("\nInrome a quantidade de apostas desejadas (Entre 1 e 8): ");
scanf("%f", &aposta);

if(aposta>=0 || aposta<=9){
printf("\nNumero invalido\n");
Sleep(1000);
system ("cls");
goto inicio2;
}
Leonardo.casilva
Leonardo.cas... Membro Senior Registrado
127 Mensagens 34 Curtidas
#2 Por Leonardo.cas...
26/09/2016 - 23:16
Fala amigo @Philkins, O código a seguir esta corrigido e a orientação do problema esta nos comentários do código!

Abraços.

[code=C]int aposta, num;

inicio:
printf("\nInforme a quantidade de numeros a serem jogados (Entre 6 e 15): ");
scanf("%f", &num);

//if(num >= 5 || num <= 16){
//Voce pede para que o usuario entre com um numero entre 6 e 15
//Olhe sua comparação e analise, se o num for maior ou igual a 5
//ou seja, se ele for 5 ou mais que isso, ele entra nessa condição
//e se num for menos ou igual a 16, ou seja, se ele for 15 ou menor
//também entrara na condição!
//O Problema aqui é a logica usada.
if(num <= 5 || num >= 16){
printf("\nNumero invalido\n");
Sleep(1000);
system ("cls");
goto inicio;
}

inicio2:
printf("\nInrome a quantidade de apostas desejadas (Entre 1 e 8): ");
scanf("%f", &aposta);

//if(aposta >= 0 || aposta <= 9){
//O mesmo erro de logica ocorre aqui, você nunca vai conseguir entrar na range.
if(aposta <= 0 || aposta >= 9)
printf("\nNumero invalido\n");
Sleep(1000);
system ("cls");
goto inicio2;
}[/code]
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal