Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

146
Vistas
No puedo hacer que la declaración de cambio de Java en mi juego de piedra, papel o tijera funcione correctamente

Estoy creando un juego de piedra, papel o tijera, en el método playGame() no puedo hacer que el código funcione, solo imprime lo que el usuario y la computadora han elegido. Traté de averiguar dónde me estaba equivocando y todo lo que pude hacer fue imprimir un dibujo, ¡pero hizo que el juego siempre dibujara!

Todavía no he terminado el método, también necesito agregar un contador de puntaje hasta 3.

 import java.util.Random; public class RockPaperScissors { private InputReader reader; private int yourScore; private int computerScore; private Random ran; /** * Constructor for objects of class RockPaperScissors */ public RockPaperScissors() { reader = new InputReader(); yourScore = 0; computerScore = 0; ran = new Random(1); } /** * An example of a method - replace this comment with your own */ public void printPrompt() { System.out.println(); System.out.println(); System.out.println("Enter your choice, paper, rock or scissors >"); } public String userChoice() { String input = reader.getInput(); input = input.trim().toLowerCase(); return input; } public String computerChoice() { Random ran = new Random(); int myRanInt = ran.nextInt(3); String computerRanChoice =""; switch(myRanInt) { case 0: computerRanChoice = "paper"; break; case 1: computerRanChoice = "scissors"; break; case 2: computerRanChoice = "rock"; break; } return computerRanChoice; } public void playGame() { printPrompt(); String userMove = this.userChoice(); System.out.println("you have chosen " + userMove + " and the computer has chosen " + computerChoice()); int roundWinner = 0; int count = 1; switch(roundWinner) { case 0: computerChoice().equals(userChoice()); System.out.println("This game is a draw"); break; case 1: computerChoice().equals("rock"); System.out.println(userMove.equals("paper") ? "The computer is the winner" : "You are the winner"); break; case 2: computerChoice().equals("paper"); System.out.println(userMove.equals("scissors") ? "The computer is the winner" : "You are the winner"); break; case 3: computerChoice().equals("scissors"); System.out.println(userMove.equals("rock") ? "The computer is the winner" : "You are the winner"); break; } } }
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

En el bloque de cambio del método playgame() , ha inicializado el valor de roundWinner como 0, por lo que siempre imprimirá el case 0 , es decir, la declaración de sorteo.

Usar switch en este caso parece un poco complicado, ya que estás trabajando con dos variables, la elección de la computadora y del jugador, mientras que switch funciona solo con una variable. Intente usar algunas declaraciones if primero y luego trabaje su lógica para cambiar si es necesario

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda