Ir ao conteúdo
  • Cadastre-se

jogo da senha


Nádia52

Posts recomendados

Boa tarde pessoal,

Estou tentando fazer um prgm que o prof. da facul pediu para jogar o jogo da senha, comecei mas como sou iniciante em C, não estou conseguindo terminar, será que podem me dar uma forcinha....

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int main()
{
int i,j, b1,b2, b3, b4, numeros, resp, ccc, cpe;
printf("\nSeja bem vindo ao Jogo da Senha\n");
printf("\nDigite seus numeros:\n");
scanf("%d", &numeros);
for (i=0; i<j; i++)
{
printf("\nEscolha os numeros de 0 a 10\n");
scanf("%d", &numeros);
{
if (a1==b1) ccc++;
else if a1==b2 || a1==b3 || a1==b4 cpe++
a=1=rand()15%+1
}
while (resp !=0 && resp !=10)
{
printf("\nVoce errou!!! Tente de novo!!!!\n");
scanf("%d", &resp);
}
}
system("PAUSE");
return 0;
}

Valeu!!!!!

:(

Link para o comentário
Compartilhar em outros sites

Jogo de Senha: o computador sorteia 4 algarismos, o jogador entra com 4 algarismos, o computador então indica quantos algarismos estão certos mas fora do lugar e quantos estão certos e no lugar. O jogo procede e em no máximo 15 jogadas o usuário deve acertar os 4 algarismos na ordem para acertar.

Link para o comentário
Compartilhar em outros sites

Acabei dando uma modificada grande no seu código.

Mas, pelo o que eu entendi, veja se é isso:


#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <string.h>
#include <ctype.h>

#define RAND_MAX 10

int main()
{

char numeros[4], comp[4], existe[5], mesmapos[5], opcao = 'S';
int i = 0, j = 0, k = 0, flag = 0, indice_existe = 0, indice_mesmapos = 0;

existe[5] = '\0';
mesmapos[5] = '\0';

printf("\nSeja bem vindo ao Jogo da Senha\n");

while ( opcao == 'S' )
{

//Zera vetores
memset(existe, '\0', sizeof(existe) );
memset(mesmapos, '\0', sizeof(mesmapos) );
memset(comp, '\0', sizeof(comp) );

// Carrega valores do computador
for ( i = 0; i < 4; i++ )
{
srand( (unsigned int) time( NULL ) );
comp[i] = ( rand() % ( RAND_MAX - 1 ) ) + 48;

// Se houve numero igual, refaz o rand()
for ( j = 0; comp[j] != '\0'; j++ )
{
if ( ( comp[j] == comp[i] ) && ( i != j ) && ( flag == 0 ) )
{
i--;
break;
}
}

}

// Numero de tentativas
for ( i = 1; i <= 15; i++ )
{

// Zera controladores de indice
indice_existe = 0;
indice_mesmapos = 0;

// Valores do usuario
printf("Tentativa numero %d\nDigite seus 4 numeros (EX: 1234):\n", i);
fflush( stdin );
scanf("%s", numeros);

for ( j = 0; j < 4; j++ ) // Para numeros[]
{

for ( k = 0; k < 4; k++ ) // Para comp[]
{

if ( ( numeros[j] == comp[k] ) && ( indice_existe < 4 ) ) // Se existir, insere na lista existe[]
{
existe[indice_existe] = numeros[j];
indice_existe++;

if ( j == k ) // E se estiver na mesma posicao, insere na lista mesmapos[]
{
mesmapos[indice_mesmapos] = numeros[j];
indice_mesmapos++;
}

}

}

}

// Lista valores do usuario que existem na senha
for ( j = 0; existe[j] != '\0'; j++ )
printf("Tem na senha: %c\n", existe[j] );

// Lista valores do usuario que existem na senha e estão na mesma posicao
for ( j = 0; mesmapos[j] != '\0'; j++ )
{

printf("Mesma posicao: %c\n", mesmapos[j] );

if ( j == 3 ) // Se o array foi completo, então acertou a resposta
{
printf("Parabens, acertou!!\n");
return 0;
}

}

}

printf("Infelizmente voce errou!\n");
printf("Deseja jogar novamente? (S/N)\n");
fflush(stdin);
scanf("%c", &opcao );
opcao = toupper( opcao );

}

return 0;

}

Link para o comentário
Compartilhar em outros sites

  • 2 anos depois...

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!