Acabei de iniciar na linguagem C e estou com uma "pequena" duvida...
AQUI ABAIXO ESTA O CODIGO....
#include<stdio.h>#include<stdlib.h>int main(){int dinheiro,n1,n2,conti;int n11,n22,aposta,div;
printf("Inicie com um valor\n");
scanf("%d",&dinheiro);
system("clear");
menu:do{
printf("-----------------------------\n");
printf(" J O G O D A A P O S T A \n");
printf("-----------------------------\n");
printf("Voce possui %d Reais\n",dinheiro);
printf("Escolha dois numeros de 1 a 20\n");
scanf("%d",&n1);
scanf("%d",&n2);if((n1 <1)||(n1 >20)||(n2 <1)||(n2 >20));{
printf("Numeros Invalidos!\n");
printf("Tecle 0 para continuar\n");
scanf("%d",&conti);
system("clear");}}while((n1 <1|| n1 >20)||(n2 <1|| n2 >20));
system("clear");do{
printf("Quanto desaja apostar no [%d] e [%d]\n",n1,n2);
scanf("%d",&aposta);if(aposta > dinheiro || aposta <0){
printf("Quantia Invalida!\n");
printf("Tecle 0 para continuar\n");
scanf("%d",&conti);
system("clear");}}while(aposta > dinheiro || aposta <0);
system("clear");
n11 =1+(rand()%20);
n22 =1+(rand()%20);
printf("Numeros sorteados foram [%d] e [%d]\n",n11,n22);if(n1 == n11 && n1 == n22 && n2 == n11 && n2 == n22){
printf("Voce acertou os dois numeros e ganhou %d\n",aposta);
dinheiro = dinheiro + aposta;
printf("Tecle 0 para continuar\n");
scanf("%d",&conti);
system("clear");goto menu;}if(n1 == n11 || n1 == n22 || n2 == n11 || n2 == n22){
div = aposta /2;
printf("Voce acertou um numero e ganhou %d\n",div);
dinheiro = dinheiro + div;
printf("Tecle 0 para continuar\n");
scanf("%d",&conti);
system("clear");goto menu;}else
printf("Voce errou os dois numeros e perdeu %d\n",aposta);
dinheiro = dinheiro - aposta;
printf("Tecle 0 para continuar\n");
scanf("%d",&conti);
system("clear");goto menu;return0;}
Perceba que no primeiro (IF) caso esteja verdadeiro, para que isso aconteça, deverá inserir um numero menor que 1 e maior que 20... ele irá mostrar, Numero Invalido e etc....
MAS.... mesmo eu inserindo números entre 1 a 20 ele entra nessa condição... Porque? Essa é a minha primeira e a principal duvida...
Tenho outra duvida, porem um pouco importante, perceba que tem a função (GOTO) ele redireciona láááá no comecinho... Mas gostaria de retirar essa utilização do GOTO. O que tanto posso fazer para não usar o GOTO?
Pergunta
Vinicius230
Boa noite pessoal!
Acabei de iniciar na linguagem C e estou com uma "pequena" duvida...
AQUI ABAIXO ESTA O CODIGO....
Perceba que no primeiro (IF) caso esteja verdadeiro, para que isso aconteça, deverá inserir um numero menor que 1 e maior que 20... ele irá mostrar, Numero Invalido e etc....
MAS.... mesmo eu inserindo números entre 1 a 20 ele entra nessa condição... Porque? Essa é a minha primeira e a principal duvida...
Tenho outra duvida, porem um pouco importante, perceba que tem a função (GOTO) ele redireciona láááá no comecinho... Mas gostaria de retirar essa utilização do GOTO. O que tanto posso fazer para não usar o GOTO?
Obrigado desde já!
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.