• Matéria: Informática
  • Autor: carlos5411
  • Perguntado 3 anos atrás

Faça uma versão em Java para o jogo “pedra-papel-tesoura”. Inicialmente deve ser lido o nome do jogador e sua escolha ("pedra", "papel" ou "tesoura"). Ao final, o jogo deve imprimir o nome do jogador que ganhou a rodada ou se houve empate. Regras: pedra ganha de tesoura; tesoura ganha de papel; papel ganha de pedra. As únicas entradas válidas devem ser: "pedra", "papel" ou "tesoura", garanta que a restrição será atendida. Ignore o uso de letras maiúsculas e/ou minúsculas.

JAVA

Preciso dessa resposta urgente.

Respostas

respondido por: joaopedrolemos
0

import java.lang.Math;

import java.util.Scanner;

public class brainly{

   public static void main (String[] args) {

        processo();

       //Repetir o jogo

       char resposta;

       do {

           System.out.print("Deseja jogar novamente?(s/n)");

           Scanner ans = new Scanner (System.in);

           resposta = ans.next().charAt(0);

               if (resposta == 's'){

                   processo();

               }

               else if (resposta != 's'){

                   break;

               }

               else {

                   System.out.println("Erro");

               }

       } while (resposta == 's');

   }

   

   public static void processo(){

       System.out.print("NOME: ");

       Scanner name = new Scanner (System.in);

       String nome = name.nextLine();

       // recebe a escolha

       System.out.println("1-Pedra\n2-Papel\n3-Tesoura");

       System.out.print("Escolha: ");

       Scanner op1 = new Scanner (System.in);

       int usr_esc = op1.nextInt();

       

       int usr1, usr2;

       usr1 = usr2 = 0;

       

           switch (usr_esc){

               case 1: usr1 = 1; System.out.println("Player1: Pedra");

               break; //pedra

               case 2: usr1 = 2; System.out.println("Player1: Papel");

               break; //papel

               case 3: usr1 = 3; System.out.println("Player1: Tesoura");

               break; //tesoura

               default: System.out.println("Erro"); break;

           }

           

       int indice = (int)(1+(Math.random()*3));

         

           switch (indice){

               case 1: usr2 = 1; System.out.println("Player2: Pedra");

               break;

               case 2: usr2 = 2; System.out.println("Player1: Papel");

               break;

               case 3: usr2 = 3; System.out.println("Player1: Tesoura");

               break;

               default: System.out.println("Erro"); break;

           }

       boolean vitoria = true;

       boolean empate = false;

       if (usr1 == usr2){

           empate = true;

           vitoria = false;

           System.out.println("Empate");

       }

       else {

           if (usr1==1&&usr2==2){

               vitoria = false;

           }

           else if (usr1==1&&usr2==3){

               vitoria = true;

           }

           else if (usr1==2&&usr2==1){

               vitoria = true;

           }

           else if (usr1==2&&usr2==3){

               vitoria = false;

           }

           else if (usr1==3&&usr2==1){

               vitoria = false;

           }

           else {

               vitoria = true;

           }

       }

     

       if (vitoria){

           System.out.println(nome + " Win");

       }

       else if (empate && vitoria == false){

           System.out.println(nome + " Empate");

       }

       else{

           System.out.println(nome + " Lose");

       }

   }

}


joaopedrolemos: OUTPUT:

NOME: Joao
1-Pedra
2-Papel
3-Tesoura
Escolha: 3
Player1: Tesoura
Player1: Papel
Joao Win
Deseja jogar novamente?(s/n)n
joaopedrolemos: Por praticidade fiz assim, mas, se você substitui o switch com int por String...
joaopedrolemos: se quiser*
Perguntas similares