本文实例为大家分享了java实现简单石头剪刀布游戏的具体代码,供大家参考,具体内容如下
问题描述
Alice, Bob和Cindy一起玩猜拳的游戏。和两个人的猜拳类似,每一轮,他们会从石头、剪刀、布中各自选一个出拳,基本的胜负规则是石头赢剪刀、剪刀赢布、布赢石头。如果一轮中正好可以分成胜负两边,则负边的每个人要支付给胜边的每个人一块钱。如果无法分成胜负两边,则都不出钱。比如,如果Alice出石头,而Bob和Cindy都出布,则Alice要分支付Bob和Cindy一块钱。再如,如果Alice出石头, Bob出剪刀, Cindy出布,则都不出钱。他们三人共进行了n轮游戏,请问最后每个人净赚多少钱?即赚的钱减去支付的钱是多少?
代码
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
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); } } |
运行截图
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
原文链接:https://blog.csdn.net/weixin_43388956/article/details/113938103