Prévia do material em texto
NOME: Tiago Alves de Andrade
Disciplina: Algoritmos e Programação Aplicada
RA: 19183224
POLO: (Assaí)
Tutora: Simone Vieira Pereira
ESTUDO DE CASO
#include
// Definições de constantes para facilitar a leitura do código
#define PEDRA 1
#define PAPEL 2
#define TESOURA 3
#define NUM_RODADAS 10
/**
* Função principal do programa.
*/
int main() {
int jogada1, jogada2;
int vitorias_jogador1 = 0;
int vitorias_jogador2 = 0;
int rodada atual;
printf ("🤖 Jogo Pedra-Papel-Tesoura (Jokenpô) ✂️\n");
printf ("O jogo será disputado em %d rodadas.\n", NUM_RODADAS);
printf ("Escolhas:\n");
printf (" 1 - PEDRA\n");
printf (“ 2 - PAPEL\n");
printf (" 3 - TESOURA\n");
// Laço principal para as 10 rodadas
for (rodada atual = 1; rodada atual 3)) {
printf("⚠️ Valor inválido. Por favor, digite 1, 2 ou 3.\n");
// Limpa o buffer de entrada para evitar loop infinito com caracteres não numéricos
while (getchar() != '\n');
jogada1 = 0; // Garante que o loop continue
}
} while (jogada1 3);
// --- Leitura da Jogada do Jogador 2 ---
do {
printf("JOGADOR 2: Digite sua escolha (1, 2 ou 3): ");
// Verifica se a leitura foi bem-sucedida e se o valor é válido
if (scanf("%d", &jogada2) != 1 || (jogada2 3)) {
printf("⚠️ Valor inválido. Por favor, digite 1, 2 ou 3.\n");
// Limpa o buffer de entrada
while (getchar() != '\n');
jogada2 = 0; // Garante que o loop continue
}
} while (jogada2 3);
printf("JOGADAS: Jogador 1 escolheu %d, Jogador 2 escolheu %d\n", jogada1, jogada2);
// --- Verificação do Resultado ---
// 1. Empate
if (jogada1 == jogada2) {
printf("➡️ Empate (as escolhas foram iguais).\n");
}
// 2. Vitórias do Jogador 1
// (Pedra 1 vence Tesoura 3) OU (Papel 2 vence Pedra 1) OU (Tesoura 3 vence Papel 2)
else if ( (jogada1 == PEDRA && jogada2 == TESOURA) ||
(jogada1 == PAPEL && jogada2 == PEDRA) ||
(jogada1 == TESOURA && jogada2 == PAPEL) ) {
printf("🎉 JOGADOR 1 venceu esta rodada!\n");
vitorias_jogador1++;
}
// 3. Vitórias do Jogador 2 (o único caso restante)
else {
printf("🎊 JOGADOR 2 venceu esta rodada!\n");
vitorias_jogador2++;
}
}
// --- Resultado Final ---
printf("\n===================================\n");
printf(" RESULTADO FINAL \n");
printf("===================================\n");
printf("🏆 Total de Vitórias do JOGADOR 1: %d\n", vitorias_jogador1);
printf("🏆 Total de Vitórias do JOGADOR 2: %d\n", vitorias_jogador2);
if (vitorias_jogador1 > vitorias_jogador2) {
printf("\n🥇 O VENCEDOR DO JOGO é o JOGADOR 1!\n");
} else if (vitorias_jogador2 > vitorias_jogador1) {
printf("\n🥇 O VENCEDOR DO JOGO é o JOGADOR 2!\n");
} else {
printf("\n🤝 O JOGO TERMINOU EMPATADO!\n");
}
printf("===================================\n");
return 0;
}
image1.png
NOME: Tiago Alves de Andrade
Disciplina:
Algoritmos e
Programação Aplicada
RA: 19183224
POLO: (Assaí)
Tutora:
Simone Vieira Pereira
ESTUDO DE CASO
#include
// Definições de constantes para facilitar a leitura do código
#define PEDRA
1
#define PAPEL 2
#define TESOURA 3
#define NUM_RODADAS 10
/**
* Função principal do programa.
*/
int main() {
int jogada1, jogada2;
int vitorias_jogador1 = 0;
int vitorias_jogador2 = 0;
int rodada atual;
printf ("
?
Jogo Pedra
-
Pa
pel
-
Tesoura (Jokenpô)
?
?
\
n");
printf ("O jogo será disputado em %d rodadas.
\
n", NUM_RODADAS);
printf ("Escolhas:
\
n");
printf (" 1
-
PEDRA
\
n");
printf (“ 2
-
PAPEL
\
n");
printf (" 3
-
TESOURA
\
n");
// Laço principal para as 10 rodadas
for (rodada atual = 1; rodada atual
// Definições de constantes para facilitar a leitura do código
#define PEDRA 1
#define PAPEL 2
#define TESOURA 3
#define NUM_RODADAS 10
/**
* Função principal do programa.
*/
int main() {
int jogada1, jogada2;
int vitorias_jogador1 = 0;
int vitorias_jogador2 = 0;
int rodada atual;
printf ("? Jogo Pedra-Papel-Tesoura (Jokenpô) ??\n");
printf ("O jogo será disputado em %d rodadas.\n", NUM_RODADAS);
printf ("Escolhas:\n");
printf (" 1 - PEDRA\n");
printf (“ 2 - PAPEL\n");
printf (" 3 - TESOURA\n");
// Laço principal para as 10 rodadas
for (rodada atual = 1; rodada atual