java實現簡單石頭剪刀佈遊戲

本文實例為大傢分享瞭java實現簡單石頭剪刀佈遊戲的具體代碼,供大傢參考,具體內容如下

問題描述

Alice, Bob和Cindy一起玩猜拳的遊戲。和兩個人的猜拳類似,每一輪,他們會從石頭、剪刀、佈中各自選一個出拳,基本的勝負規則是石頭贏剪刀、剪刀贏佈、佈贏石頭。如果一輪中正好可以分成勝負兩邊,則負邊的每個人要支付給勝邊的每個人一塊錢。如果無法分成勝負兩邊,則都不出錢。比如,如果Alice出石頭,而Bob和Cindy都出佈,則Alice要分支付Bob和Cindy一塊錢。再如,如果Alice出石頭, Bob出剪刀, Cindy出佈,則都不出錢。他們三人共進行瞭n輪遊戲,請問最後每個人凈賺多少錢?即賺的錢減去支付的錢是多少?

代碼

package Ring1270.pra.java01;
import java.util.Scanner;
/**
 * finger-guessing game: * n:number of games * A: Person A's money * B: Person B's money * C: Person C's money * 0: Stand for stone * 1: Stand for Scissor * 2: Stand for cloth * rule1: Two persons give the same result means game over * Rule2: The money add 1 everytime which win * Rule3:The money less 1 everytime which fail * */public class D_FingerGuessingGame {
  public static void main(String[] args) {
    int A = 0;
    int B = 0;
    int C = 0;
    Scanner scanner = new Scanner(System.in);
    System.out.printf("The number of game:");
    int n = scanner.nextInt();
    StringBuffer stringBuffer = new StringBuffer();
    for (int i = 0; i <= n; i++) {
      String s = scanner.nextLine();
      char[] D = s.toCharArray();
      for (int j = 0; j < D.length; j++) {
        //A and B success
 if (D[0] == D[1] && D[0] != D[2]) {
          if ('0' == D[0] && '1' == D[2]) {
            A++;
            B++;
            C -= 2;
          }
          else if ('1' == D[0] && '2' == D[2]) {
            A++;
            B++;
            C -= 2;
          }
          else if ('2' == D[0] && '0' == D[2]) {
            A++;
            B++;
            C -= 2;
          }else {
            A--;
            B--;
            C += 2;
          }
        }
        // A and C success
 if (D[0] == D[2] && D[0] != D[1]) {
          if ('0' == D[0] && '1' == D[1]) {
            A++;
            B -= 2;
            C++;
          }
          else if ('1' == D[0] && '2' == D[1]) {
            A++;
            B -= 2;
            C++;
          }
          else if ('2' == D[0] && '0' == D[1]) {
            A++;
            B -= 2;
            C++;
          }else {
            A--;
            B += 2;
            C--;
          }
        }
        // C and B success
 if (D[1] == D[2] && D[1] != D[0]) {
          if ('0' == D[1] && '1' == D[0]) {
            A -= 2;
            B++;
            C++;
          }
          else if ('1' == D[1] && '2' == D[0]) {
            A -= 2;
            B++;
            C++;
          }
          else if ('2' == D[1] && '0' == D[0]) {
            A -= 2;
            B++;
            C++;
          }
          else {
            A += 2;
            B--;
            C--;
          }
        }
        break;
      }
    }
    System.out.println(A);
    System.out.println(B);
    System.out.println(C);
  }
}

運行截圖

以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。

推薦閱讀: