【解決方法】Javaでじゃんけんをするにはどうすればよいですか?


子供の頃のゲーム「ジャンケン」を覚えていますか? 2人でじゃんけん、じゃんけんのいずれかを同時に選ぶゲームです。 ジャンケンはハサミに勝って紙に負け、紙はジャンクに勝ってハサミに負け、ハサミは紙に勝ってジャンクに負ける。 次のコードは、プレーヤー 1 とプレーヤー 2 にそれぞれ、じゃんけんのいずれかの文字列を入力するように求めます。 ネストされた if ステートメントを追加してコードを完成させ、「プレイヤー 1 が勝つ」、「プレイヤー 2 が勝つ」、または「引き分け」を適切に報告します。

これまでのところ、私が持っているのはこれだけです。この時点以降は無知です…文字列が等しくない場合、どうすれば比較できますか??

Java
import java.util.Scanner;
public class RockPaperScissors
{
     public static void main(String[] args)
    {
        Scanner scan = new Scanner(System.in);
        System.out.println("Player 1: Choose rock, scissors, or paper:";);
        String player1 = scan.next().toLowerCase();
        System.out.println("Player 2: Choose rock, scissors, or paper:");
        String player2 = scan.next().toLowerCase();

          if (player1.equals(player2))
          {
            System.out.print("It is a tie");
          }
        .....
    }
}

解決策 1

より良いアプローチは、オプションを整数として扱うことだと思います。比較が簡単です。
私はこのようなことをします:

Java
final static int ROCK = 1, SCISSOR = 2, PAPER = 3;
    public static void main(String[] args)
    {
        Scanner scan = new Scanner(System.in);
        System.out.println("Player 1: Choose (1) - Rock, (2) - Scissors, or (3) - Paper: ");
        int player1 = scan.nextInt();
        System.out.println("Player 2: Choose (1) - Rock, (2) - Scissors, or (3) - Paper: ");
        int player2 = scan.nextInt();
     
        if (player1 == player2)
        {
            System.out.print("It is a tie");
        } else {
            switch (player1){
            case ROCK:
                if (player2 == SCISSOR)
                    System.out.print("Player 1 wins!");
                else
                    System.out.print("Player 2 wins!");
                break;
            case SCISSOR:
                if (player2 == PAPER)
                    System.out.print("Player 1 wins!");
                else
                    System.out.print("Player 2 wins!");
                break;
            case PAPER:
                if (player2 == ROCK)
                    System.out.print("Player 1 wins!");
                else
                    System.out.print("Player 2 wins!");
                break;
            }
        }
    }

解決策 16

java.util.Scanner をインポートします。

// Gaurav Mishra による解決策

パブリック クラス p5 {
public static void main(文字列[] 引数) {
System.out.println(“Rock(1) Paper(2) Siccoros(3”);

Scanner sc=new Scanner(System.in);

System.out.println(“プレイヤー 1 の値を選択”);
int player1=sc.nextInt();

System.out.println(“プレイヤー 1 の値を選択”);

int player2=sc.nextInt();

もし(プレイヤー1==1){
System.out.println(“Player1 choose=ロック”);
}else if(player1==2){
System.out.println(“Player1 choose=Paper”);
}else if(player1==3){
System.out.println(“Player1 choose=S​​iccoros”);
}それ以外{
System.out.println(“1 ~ 3 の値を選択してください”);
}

if(player2==1){
System.out.println(“Player2 choose=ロック”);
}else if(player2==2){
System.out.println(“Player2 choose=Paper”);
}else if(player2==3){
System.out.println(“Player2 choose=S​​iccoros”);
}それ以外{
System.out.println(“1 ~ 3 の値を選択してください”);
}

スイッチ (プレイヤー1) {
ケース 1:
もし(プレイヤー2==2){
System.out.println(“Player2 の勝利”);
}それ以外{
System.out.println(“Player1 の勝利”);
}

壊す;

ケース 2:
もし(プレイヤー2==3){
System.out.println(“Player2 の勝利”);
}それ以外{
System.out.println(“Player1 の勝利”);
}

壊す;

ケース 3:
if(player2==1){
System.out.println(“Player2 の勝利”);
}それ以外{
System.out.println(“Player1 の勝利”);
}

壊す;

デフォルト:
System.out.println(“次回試してみる”);
壊す;
}

}
}

解決策 17

import java.util.Scanner;
public class rockpaperscissor {
    public static void main(String[] args) {
        int rock=1 , paper=2, scissor=3;
        System.out.println("let us play rock , paper and scissor");
        Scanner sc = new Scanner(System.in);
        System.out.println("Select a number from 1 to 3");
        int Player1 = sc.nextInt();
        System.out.println("Select a number from 1 to 3");
        int Player2 = sc.nextInt();
        if (Player1==Player2) {
            System.out.println("It is a tie");
        }
        else if (Player1==1 && Player2==2) {
            System.out.println("Player 2 wins");
        }
        else if (Player1==2 && Player2==1) {
            System.out.println("Player 2 wins");
        }
        else if (Player1==1 && Player2==3) {
            System.out.println("Player 1 wins");
        }
        else if (Player1==3 && Player2==1) {
            System.out.println("Player 2 wins");
        }
        else if (Player1==3 && Player2==2) {
            System.out.println("Player 1 wins");
        }
        else if (Player1==2 && Player2==3) {
            System.out.println("Player 2 wins");
        }
        else{
            System.out.println("you have not chosen the correct numbers between 1 to 3");
        }
    }
}

コメント

タイトルとURLをコピーしました