Advertisement
campos20

Untitled

May 19th, 2020
1,505
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.11 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #define MAXIMO 20
  5.  
  6. // Par ou impar
  7. // Autor: Alexandre Campos
  8.  
  9. // Funcao de leitura de inteiros
  10. int le_numero(){
  11.     int resultado;
  12.  
  13.     printf("Digite um numero\n");
  14.     scanf("%d", &resultado);
  15.  
  16.     return resultado;
  17. }
  18.  
  19. int gera_numero_aleatorio(){
  20.     return random() % MAXIMO; // Retorna um numero aleatorio
  21. }
  22.  
  23. // Void e sem retorno
  24. void exibe_par_ou_impar(int n){
  25.     if (n % 2 == 0){
  26.         printf("Par\n");
  27.     } else {
  28.         printf("Impar\n");
  29.     }
  30. }
  31.  
  32. void analise_resultado(int opcao, int resultado){
  33.     if (opcao == 1){ // Pessoa escolheu impar
  34.         printf("Voce escolheu impar\n");
  35.         if (resultado % 2 == 1){ // Resultado impar
  36.             printf("Voce venceu\n");
  37.         } else { // Resultado par
  38.             printf("Voce perdeu");
  39.         }
  40.     } else if (opcao == 2){ // Pessoa escolha par
  41.         printf("Voce escolheu par\n");
  42.         if (resultado % 2 == 0){ // Resultado par
  43.             printf("Voce venceu\n");
  44.         } else { // Resultado impar
  45.             printf("Voce perdeu\n");
  46.         }
  47.     } else {
  48.         printf("Opcao invalida\n");
  49.     }
  50. }
  51.  
  52. int main()
  53. {
  54.     // Declaracao
  55.     int escolha_usuario, escolha_computador, resultado, opcao;
  56.  
  57.     // Precisa ser chamado 1 vez, entao fica no main
  58.     srand(time(NULL));
  59.  
  60.     // Atribui a escolha do computador
  61.     escolha_computador = gera_numero_aleatorio();
  62.  
  63.     printf("Digite 1 para impar ou 2 para par\n");
  64.     scanf("%d", &opcao);
  65.  
  66.     // Deixamos o usuario escolher um numero
  67.     escolha_usuario = le_numero();
  68.  
  69.     printf("Voce digitou %d\n", escolha_usuario);
  70.     exibe_par_ou_impar(escolha_usuario);
  71.  
  72.     // Exibir escolha do computador
  73.     printf("Escolha do computador foi %d\n", escolha_computador);
  74.     exibe_par_ou_impar(escolha_computador);
  75.  
  76.     // Logica do jogo
  77.     resultado = escolha_computador + escolha_usuario;
  78.     printf("O resultado foi %d\n", resultado);
  79.     exibe_par_ou_impar(resultado);
  80.  
  81.     // Analisa se a opcao da pessoa e o resultado tem mesma paridade
  82.     analise_resultado(opcao, resultado);
  83.  
  84.     return 0;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement