Last active
August 10, 2023 03:15
-
-
Save mauricioaniche/c289fa3429b0f27fb7f9 to your computer and use it in GitHub Desktop.
Código final do jogo de adivinhação
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// incluindo as bibliotecas | |
#include <stdio.h> | |
#include <stdlib.h> | |
#include <time.h> | |
// definindo as constantes | |
#define NUMERO_DE_TENTATIVAS 3 | |
int main() { | |
// imprimindo cabecalho bonito do jogo | |
printf("\n\n"); | |
printf(" P /_\\ P \n"); | |
printf(" /_\\_|_|_/_\\ \n"); | |
printf(" n_n | ||. .|| | n_n Bem vindo ao \n"); | |
printf(" |_|_|nnnn nnnn|_|_| Jogo de Adivinhação! \n"); | |
printf(" |\" \" | |_| |\" \" | \n"); | |
printf(" |_____| ' _ ' |_____| \n"); | |
printf(" \\__|_|__/ \n"); | |
printf("\n\n"); | |
// declarando variaveis que serao usadas mais a frente | |
int chute; | |
int acertou; | |
int nivel; | |
int totaldetentativas; | |
// definindo a quantidade de pontos inicial | |
double pontos = 1000; | |
// gerando um numero secreto aleatorio | |
srand(time(0)); | |
int numerosecreto = rand() % 100; | |
// escolhendo o nivel de dificuldade | |
printf("Qual o nível de dificuldade?\n"); | |
printf("(1) Fácil (2) Médio (3) Difícil\n\n"); | |
printf("Escolha: "); | |
scanf("%d", &nivel); | |
switch(nivel) { | |
case 1: | |
totaldetentativas = 20; | |
break; | |
case 2: | |
totaldetentativas = 15; | |
break; | |
default: | |
totaldetentativas = 6; | |
break; | |
} | |
// loop principal do jogo | |
for(int i = 1; i <= totaldetentativas; i++) { | |
printf("-> Tentativa %d de %d\n", i, totaldetentativas); | |
printf("Chute um número: "); | |
scanf("%d", &chute); | |
// tratando chute de numero negativo | |
if(chute < 0) { | |
printf("Você não pode chutar números negativos\n"); | |
i--; | |
continue; | |
} | |
// verifica se acertou, foi maior ou menor | |
acertou = chute == numerosecreto; | |
if(acertou) { | |
break; | |
} else if(chute > numerosecreto) { | |
printf("\nSeu chute foi maior do que o número secreto!\n\n"); | |
} else { | |
printf("\nSeu chute foi menor do que o número secreto!\n\n"); | |
} | |
// calcula a quantidade de pontos | |
double pontosperdidos = abs(chute - numerosecreto) / 2.0; | |
pontos = pontos - pontosperdidos; | |
} | |
// imprimindo mensagem de vitoria ou derrota | |
printf("\n"); | |
if(acertou) { | |
printf(" OOOOOOOOOOO \n"); | |
printf(" OOOOOOOOOOOOOOOOOOO \n"); | |
printf(" OOOOOO OOOOOOOOO OOOOOO \n"); | |
printf(" OOOOOO OOOOO OOOOOO \n"); | |
printf(" OOOOOOOO # OOOOO # OOOOOOOO \n"); | |
printf(" OOOOOOOOOO OOOOOOO OOOOOOOOOO \n"); | |
printf("OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO \n"); | |
printf("OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO \n"); | |
printf("OOOO OOOOOOOOOOOOOOOOOOOOOOOOO OOOO \n"); | |
printf(" OOOO OOOOOOOOOOOOOOOOOOOOOOO OOOO \n"); | |
printf(" OOOO OOOOOOOOOOOOOOOOOOOO OOOO \n"); | |
printf(" OOOOO OOOOOOOOOOOOOOO OOOO \n"); | |
printf(" OOOOOO OOOOOOOOO OOOOOO \n"); | |
printf(" OOOOOO OOOOOO \n"); | |
printf(" OOOOOOOOOOOO \n"); | |
printf("\nParabéns! Você acertou!\n"); | |
printf("Você fez %.2f pontos. Até a próxima!\n\n", pontos); | |
} else { | |
printf(" \\|/ ____ \\|/ \n"); | |
printf(" @~/ ,. \\~@ \n"); | |
printf(" /_( \\__/ )_\\ \n"); | |
printf(" \\__U_/ \n"); | |
printf("\nVocê perdeu! Tente novamente!\n\n"); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment