Prévia do material em texto
Escreva um programa em C que implemente esse jogo.
O programa terá dois jogadores (1 e 2) e uma letra ou número para
representar as escolhas. Caberá ao aluno definir como deseja
representá-las; seguem algumas sugestões:
· 'P' ou 1 para Pedra;
· 'A' ou 2 para Papel;
· 'T' ou 3 para Tesoura;
Em um laço de repetição, faça a leitura da jogada de ambos. Se o valor
digitado for inválido, faça o jogador digitar novamente o valor.
Depois dos dois jogadores terem jogado, verifique se houve vencedor ou
empate:
Se os valores digitados forem iguais, escreva: “Empate”;
Se o valor do Jogador 1 venceu, escreva: “JOGADOR 1 venceu esta rodada”;
Se o valor do Jogador 2 venceu, escreva: “JOGADOR 2 venceu esta rodada”.
Faça com que esse laço de repetição seja executado por 10 vezes. Após a
execução do laço, mostre quantas vezes ganhou cada jogador.
RESPOSTA:
#include
int main() {
int jogador1, jogador2;
int vitorias_jogador1 = 0, vitorias_jogador2 = 0;
int i;
printf("Jogo Pedra-Papel-Tesoura\n");
printf("Escolha uma opção:\n");
printf("1 - Pedra\n");
printf("2 - Papel\n");
printf("3 - Tesoura\n");
for (i = 0; i 3) {
printf("Entrada inválida. Tente novamente.\n");
}
} while (jogador1 3);
do {
printf("Jogador 2, escolha sua jogada (1, 2 ou 3): ");
scanf("%d", &jogador2);
if (jogador2 3) {
printf("Entrada inválida. Tente novamente.\n");
}
} while (jogador2 3);
if (jogador1 == jogador2) {
printf("Empate\n");
} else if ((jogador1 == 1 && jogador2 == 3) || (jogador1 == 2 && jogador2 == 1) ||
(jogador1 == 3 && jogador2 == 2)) {
printf("JOGADOR 1 venceu esta rodada\n");
vitorias_jogador1++;
} else {
printf("JOGADOR 2 venceu esta rodada\n");
vitorias_jogador2++;
}
}
printf("\nResultados finais:\n");
printf("JOGADOR 1 ganhou %d vezes\n", vitorias_jogador1);
printf("JOGADOR 2 ganhou %d vezes\n", vitorias_jogador2);
return 0; }