ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java剪刀石头布

2021-07-24 23:31:06  阅读:223  来源: 互联网

标签:count Java System 石头 println number 剪刀 public out


package day09_test;

import java.util.Random;
import java.util.Scanner;

import day09.GamePlayer;
import day09.GameRobot;

public class GameTest {

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入猜拳比赛回合数:");
int maxNumber = input.nextInt();

//回合计数器
int count = 0;
//玩家胜利数
int countP = 0;
//电脑胜利数
int countR = 0;
while(count<maxNumber) {
System.out.println("请输入你想出的数字:(1.剪刀 2.石头 3.布)");
int PlayNum = input.nextInt();
if (PlayNum>3 || PlayNum<=0) {
System.out.println("输入有误!请重新输入:");
PlayNum =input.nextInt();
}
GamePlayer player = new GamePlayer(PlayNum);
player.say();

//机器人随机输入1-3
Random r = new Random();
int RobotNum = r.nextInt(3)+1;
GameRobot robot = new GameRobot(RobotNum);
robot.say();

//判断输赢
if (player.getNumber()==robot.getNumber()) {
count++;
System.out.println("第"+count+"局:双方一致,请重新猜拳!");

}else if (player.getNumber()==1) {//玩家出剪刀
if (robot.getNumber()==3) {//电脑出布
count++;
countP++;
System.out.println("第"+count+"局:玩家赢,您得一分!");

}else if (robot.getNumber()==2) {//电脑出石头
count++;
countR++;
System.out.println("第"+count+"局:电脑赢,它得一分!");

}

}else if (player.getNumber()==2) {//玩家出石头
if (robot.getNumber()==3) {//电脑出布
count++;
countP++;
System.out.println("第"+count+"局:电脑赢,它得一分!");

}else if (robot.getNumber()==1) {//电脑出剪刀
count++;
countR++;
System.out.println("第"+count+"局:玩家赢,您得一分!");

}

}else if (player.getNumber()==3) {//玩家出布
if (robot.getNumber()==2) {//电脑出布
count++;
countP++;
System.out.println("第"+count+"局:玩家赢,您得一分!");

}else if (robot.getNumber()==1) {//电脑出剪刀
count++;
countR++;
System.out.println("第"+count+"局:电脑赢,它得一分!");

}
}
}
if (countP==countR) {
System.out.println("电脑得分:"+countR+" 玩家得分:"+countP);
System.out.println("比赛结束,平局!");
}else if (countP>countR) {
System.out.println("电脑得分:"+countR+" 玩家得分:"+countP);
System.out.println("比赛结束,玩家胜利!");
}else {
System.out.println("电脑得分:"+countR+" 玩家得分:"+countP);
System.out.println("比赛结束,电脑胜利!");
}

}

}

 

 

package day09;

public class GameRobot {
private int number;

public int getNumber() {
return number;
}

public void setNumber(int number) {
this.number = number;
}

public GameRobot() {
super();
// TODO Auto-generated constructor stub
}

public GameRobot(int number) {
super();
this.number = number;
}
public void say() {
switch(this.number) {
case 1:
System.out.println("电脑出的是剪刀");
break;
case 2:
System.out.println("电脑出的是石头");
break;
case 3:
System.out.println("电脑出的是布");
break;
}
}
}

 

 

package day09;
/**
* 今天的任务是通过控制台方式实现一个人机对战的猜拳游戏,用户通过输入
(1.剪刀 2.石头 3.布),机器随机生成(1.剪刀 2.石头 3.布),胜者积分,
n 局以后通过积分的多少判定胜负。
任务过程:
1. 定义机器类,以及拳头属性(此属性只有三个值:剪刀,石头,布。这里
的值可以使用数值代替)
2. 定义生成随机数的方法(让机器生成剪刀,石头,布的值),赋值给第一
步的拳头属性
3. 定义测试类,获取用户输入的剪头石头布的值,和随机生成的值比较
4. 测试中,定义变量保存胜者积分
* @author 86182
*
*/
public class GamePlayer {
private int number;

public int getNumber() {
return number;
}

public void setNumber(int number) {
this.number = number;
}

public GamePlayer() {
super();
// TODO Auto-generated constructor stub
}

public GamePlayer(int number) {
super();
this.number = number;
}
public void say() {
switch(this.number) {
case 1:
System.out.println("玩家出的是剪刀");
break;
case 2:
System.out.println("玩家出的是石头");
break;
case 3:
System.out.println("玩家出的是布");
break;
}
}


}

标签:count,Java,System,石头,println,number,剪刀,public,out
来源: https://www.cnblogs.com/qianmengzbx/p/15056690.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有