Maninho Posted October 16, 2013 at 04:08 AM Report #529124 Posted October 16, 2013 at 04:08 AM O jogo funciona da seguinte forma: o jogador deve informar a quantidade de algarismos que ele quer adivinhar, sendo 2 algarismos o mínimo permitido (o mais fácil) e 4 o máximo (o mais complexo); o sistema sorteia os números, conforme a quantidade que o jogador informou; Exemplo: jogador informa que quer adivinhar um número com 3 algarismos, o jogo sorteia um número com 3 algarismos, exemplo: 467 Importante: não poderão ser sorteados números repetidos. o jogador digita os números, após o sistema informa: quantos números ele acertou e quantos estão em posição correta; Exemplo: número sorteado: 346 jogador digita: 248 sistema informa: um número certo na posição certa o jogo termina quando o número de tentativas é correspondente ao dobro da quantidade informada. Exemplo: jogador deseja adivinhar um número com três algarismos, então terá 6 tentativas. O jogo deverá ficar disponível para 5 jogadores a cada vez que for executado. O jogo deve ter um livro de recordes, que armazene os registros dos 3 melhores jogadores: nome do jogador, pontuação e nível do jogo.O jogo funciona da seguinte forma: o jogador deve informar a quantidade de algarismos que ele quer adivinhar, sendo 2 algarismos o mínimo permitido (o mais fácil) e 4 o máximo (o mais complexo); o sistema sorteia os números, conforme a quantidade que o jogador informou; Exemplo: jogador informa que quer adivinhar um número com 3 algarismos, o jogo sorteia um número com 3 algarismos, exemplo: 467 Importante: não poderão ser sorteados números repetidos. o jogador digita os números, após o sistema informa: quantos números ele acertou e quantos estão em posição correta; Exemplo: número sorteado: 346 jogador digita: 248 sistema informa: um número certo na posição certa o jogo termina quando o número de tentativas é correspondente ao dobro da quantidade informada. Exemplo: jogador deseja adivinhar um número com três algarismos, então terá 6 tentativas. O jogo deverá ficar disponível para 5 jogadores a cada vez que for executado. O jogo deve ter um livro de recordes, que armazene os registros dos 3 melhores jogadores: nome do jogador, pontuação e nível do jogo. Já consegui gerar os números randômicos, estou com dificuldades para desmembrar os valores em um vetor...devo fazer por divisão e usar o resto né, alguem sabe esse código ? vlww
Maninho Posted October 16, 2013 at 04:26 AM Author Report #529125 Posted October 16, 2013 at 04:26 AM #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int i,vetor[4],x,t=0,a1,a2,a3,a4; printf("\n_____________________________________________________________________________"); printf("\n FOI GERADO UM NUMERO"); printf("\n ADIVINHE!"); printf("\n_____________________________________________________________________________"); printf("\n2 algarismos = nivel facil ! \n "); printf("\n3 algarismos = nivel intermediario ! \n"); printf("\n4 algarismos = nivel dificil ! \n\n"); srand(time(NULL)); printf("escolha o nivel que deseja jogar : \n"); scanf("%i", &x); switch(x){ case 2: t=x*2; printf("2 algarismos possuem %d tentativas\n",t); for(i=0;i<x;i++){ vetor[i]=rand()%10; printf("%d", vetor[i]); } break; case 3: t=x*2; printf("3 algarismos possuem %d tentativas\n",t); for(i=0;i<x;i++){ vetor[i]=rand()%10; printf("%d", vetor[i]); } break; case 4: t=x*2; printf("4 algarismos possuem %d tentativas\n",t); for(i=0;i<x;i++){ vetor[i]=rand()%10; printf("%d", vetor[i]); } break; default: printf("quantidade invalida\n"); break; } } ta ai o que eu consegui fazer até o momento...
HappyHippyHippo Posted October 16, 2013 at 03:06 PM Report #529227 Posted October 16, 2013 at 03:06 PM dois pontos : https://www.portugal-a-programar.pt/help/#code qual é a dúvida ? IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
Rui Carlos Posted October 18, 2013 at 10:06 AM Report #529566 Posted October 18, 2013 at 10:06 AM Aparentemente já resolveste a questão dos vários dígitos do número. Agora podes começar por isolar a geração dos números numa função, de modo a não teres tanto código no main. (Em geral, tenta separar o código em várias funções pequenas.) A função pode ter uma assinatura como void gera_numeros(int vetor[], int n), e colocaria em vetor n números aleatórios. Tem em atenção o requisitos de não teres dígitos repetidos. E também não faz sentido imprimires o número gerado. Depois podes passar para a função que pega no número gerado, e no número sugerido pelo utilizador, e devolve a quantos acertou. A função pode ter uma assinatura como int compara_numeros(int vetor[], int vetor_u[], int n), e devolve um valor que diz em quantas das n primeiras posições vetor e vetor_u têm o mesmo dígitos. Rui Carlos Gonçalves
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now