fork download
  1. //じゃんけんプログラム
  2.  
  3. public class Main {
  4.  
  5. public static void main(String[] args) {
  6.  
  7. System.out.println("2人でじゃんけんをします。");
  8. java.util.Scanner stdin = new java.util.Scanner(System.in);
  9.  
  10. System.out.print("あなたの名前を入力してください。>");
  11. String myName = stdin.nextLine();
  12. System.out.print("CPUに名前を付けてください。>");
  13. String cpuName = stdin.nextLine();
  14.  
  15. boolean winner = false;
  16. while (winner == false && stdin.hasNextLine()) {
  17.  
  18. System.out.print("グーなら0、チョキなら1、パーなら2を入力してください。>");
  19.  
  20. String myHandStr = stdin.nextLine(); // 何度もnewしてんじゃねーよハゲ(^q^)
  21.  
  22. if (myHandStr.matches("[0-2]") == false) {
  23. System.out.println("指定された整数値を入力してください。終了します。");
  24. System.exit(1);
  25. }
  26.  
  27. int myHand = Integer.parseInt(myHandStr);
  28.  
  29. int cpuHand = new java.util.Random().nextInt(3);
  30.  
  31. // このif文は最高にダサいからデータ構造で工夫しろよ
  32. if (cpuHand == 0)
  33. System.out.println(cpuName+"の手はグーです。");
  34. else if (cpuHand == 1)
  35. System.out.println(cpuName+"の手はチョキです。");
  36. else
  37. System.out.println(cpuName+"の手はパーです。");
  38.  
  39. if (myHand == cpuHand)
  40. System.out.println("あいこでした。もう一度やります。");
  41.  
  42. else if (myHand == 0 && cpuHand == 1) {
  43. System.out.println(myName+"の勝ちです。");
  44. winner = true; } // このクソキモいコーディング規則をどうにかしろ
  45.  
  46. else if (myHand == 1 && cpuHand == 2) {
  47. System.out.println(myName+"の勝ちです。");
  48. winner = true; }
  49.  
  50. else if (myHand == 2 && cpuHand == 0) {
  51. System.out.println(myName+"の勝ちです。");
  52. winner = true; }
  53.  
  54. else {
  55. System.out.println("残念ながら"+cpuName+"の勝ちです。");
  56. winner = true; }
  57. }
  58. }
  59. }
  60.  
Success #stdin #stdout 0.07s 4386816KB
stdin
abc
def
0
1
2
3
stdout
2人でじゃんけんをします。
あなたの名前を入力してください。>CPUに名前を付けてください。>グーなら0、チョキなら1、パーなら2を入力してください。>defの手はチョキです。
abcの勝ちです。