三人猜拳

来源:互联网 发布:单片机相关书籍 编辑:程序博客网 时间:2024/04/28 00:57

 import java.util.*;

class Player{
   
static final int STONE=1;
   
static final int SCISSORS=2;
   
static final int CLOTH=5;
   
int id;
   
int sign;
   
boolean isWinner;
    Player(
int i,int s){
        id
=i;
        sign
=s;
        isWinner
=false;
    }
}
public class StoneScissorsCloth{
   
public static void main(String[] args){
       
int[] ssc={Player.STONE,Player.SCISSORS,Player.CLOTH};
        String[] sscChinese
={"","石头","剪刀","","",""};
        Random rand
=new Random();
       
//玩10次,每次产生三个玩家,玩家出的拳是随机的。
       
//
        for(int i=0;i<10;i++){
            Player player1
=new Player(1,ssc[rand.nextInt(3)]);
            Player player2
=new Player(2,ssc[rand.nextInt(3)]);
            Player player3
=new Player(3,ssc[rand.nextInt(3)]);
            System.out.println(
"/n第"+(i+1)+"局:");
            System.out.print( 
"玩家1出的是"+sscChinese[player1.sign]+"/t");
            System.out.print( 
"玩家2出的是"+sscChinese[player2.sign]+"/t");
            System.out.println(
"玩家3出的是"+sscChinese[player3.sign]);
            whoWin(player1,player2,player3);
           
        }
    }
   
public static void whoWin(Player one,Player two,Player three){
       
int[] win={3, 3, 3, 0, -2, 1, 0, 5, 0, -5, 3, -1, 2, 3, 3, 0};
        Player[] players
=new Player[3];
        players[
0]=one;
        players[
1]=two;
        players[
2]=three;

       
int winner=win[one.sign+two.sign+three.sign];
       
       
if(winner!=0){
           
if(winner>0){
               
for(int i=0;i<3;i++){
                   
if(players[i].sign==winner){
                        players[i].isWinner
=true;
                    }
                }
            }
else{
               
for(int i=0;i<3;i++){
                   
if(players[i].sign!=-winner){
                        players[i].isWinner
=true;
                    }
                }
            }
        }
else{
            System.out.println(
"平局");
        }
       
for(int i=0;i<3;i++){
           
//这里可以根据isWinner做相应的操作。
           
//
            if(players[i].isWinner){
                System.out.println(
"玩家"+(i+1)+"赢了");
            }
        }
   

    }
}

原创粉丝点击