Ir ao conteúdo

Posts recomendados

Postado
#include <stdio.h> //biblioteca padrão;
#include <stdlib.h> //biblioteca padrão
#include <locale.h> 
#include <windows.h>
#include <conio.h>
#include <time.h>
 
int main(void){
    //Variáveis
    int i = 0, j = 0, numdeacertos = 0; //int i= 0 vai controlar o contador, j= 0 vai controlar os segundos em que o usuário vai ter para colocar os números, numdeacertos é o número de acertos em que o usuário vai ter;
    char c; //Inicio do jogo;
	int numeros[5];
    int respostas[5];
   
    //Comando de regionalização;
    
    setlocale(LC_ALL, "Portuguese");
    
    //Título do programa;
    
    SetConsoleTitle("Jogo da memoria simples");
   
    srand(time(NULL)); //Semente para gerar os números aleatórios;
       
    printf("\n BEM VINDO AO JOGO DA MEMÓRIA!!!\n\n");
    printf("\n================================\n");
    printf("\n REGRAS DO JOGO: \n");
    printf("\n Esta são as instruções que o jogador deve seguir: \n");
    printf("\n 1- Este programa irá gerar 5 números aleatórios entre 1 e 100.\n");
    printf("\n 2- Você deve decorar os números exibidos em 10 segundos e depois escreve-los na ordem em que foram exibidos.\n");
    printf("\n=============================================\n");
	printf("\n Para iniciar, Pressione ENTER e bom jogo! :)\n");
   
    do{
        c = getch(); //Esperar o enter do usuário
    }while (c != 13);
   
    for (i= 0; i< 5; i++){
        numeros[i] = (rand() % 99)+1; //Para armazenar os números aleatórios no vetor i, números entre 0 e 29 + 1 para gerar os números que queremos;
    }
   
    j= 10; //Número desejado para contagem dos segundos;
   
    do{
        system ("cls"); //Limpa a tela
        printf ("Decore os numeros abaixo em: %d!!!\n\n\n", j);
        j--; //Decrementação do j para que ele vire o valor antecessor dos números desejados para os segundos;
        for (i= 0; i< 5; i++){
            printf ("%d\t", numeros[i]);
        }
        Sleep (1000); //Espero um segundo e volto para o loop;
        
    }while (j> 0); //Este loop vai acontecer enquanto j for maior que 0;
   
    system ("cls"); //Limpa a tela novamente;
    printf ("Informe os números que foram exibidos: \n");
   
    for (i= 0;i< 5; i++){
        printf ("\t%d° número: ", i+1); //Primeiro número, segundo número, terceiro número, quarto número, quinto número (...);
        scanf ("%d", &respostas[i]); //Ler a resposta do usuário;
        if (respostas[i]==numeros[i]){ //Se o vetor de resposta for equivalente ao vetor de números, então o usuário acertou;
            numdeacertos++; //Acertos dos números digitados pelo usuário;;
        }
    }
   
    if (numdeacertos== 5){ //Se o usuário acertou os números pedidos, printf;
        printf ("\n\n Parabéns, sua memória é excelente! :) Veja os número exibidos:\n\n\t");
        for (i= 0;i< 5; i++){ //Realiza o mesmo loop do começo do código, para exibir o vetor dos números para o usuário;
            printf ("%d\t", numeros[i]);
        }
    }
    else //Caso contrário, printf; 
    {
        printf ("\n\n Que pena, sua memória não é muito boa!  Veja os número exibidos e tente novamente. :) :\n\n\t");
        for (i= 0;i< 5; i++){ //Mostra os números para o usuário;
            printf ("%d\t", numeros[i]);
        }
    }
    printf ("\n\n");
    system ("pause");
    return 0;
}

 

Postado

É um trabalho da faculdade, e é exigido uma função e uma matriz. Esta é minha duvida de onde colocar essas etapas, depois do código feito sem ter função e nem uma matriz, que observei que era obrigado colocar, apesar de ta funcionado bem o código.

A função vou tentar colocar após o return 0, e só declarar em cima do int main(), para o compilador perceber que tem uma função, já que ele ler de cima para baixo. São minhas primeiras aulas em C, por isso to meio na dúvida ainda.

assim: 

 int contagem (int numero[5], int resposta [5]);
 
int main(void){

.

.

.

return 0;

}

int contagem (int numero[5], int resposta [5]){
     for (int i= 0; i< 5; i++){
     }
 }

acha que da certo?

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!