与机器人猜拳游戏

与电脑三局两胜的猜拳游戏

**需求如下**
	//人机猜拳(1.剪刀、2.石头、3.布)
	//1.先完成可以比较一次的版本(没有循环,只有电脑获得一个随机数、玩家输入一个,多重if判断谁赢了)
	//2.固定循环3次
	//3.双方,谁率先到达连胜2局,则退出整个循环,break(添加2个计数器)
	//4.平局,不计算总局数,(平局时,continue,跳过写再最后的i++)
import java.util.Scanner;//导入控制台输入类,方便玩家输入数字
import java.util.Random;//导入随机数生成类,后续会电脑随机生成3个相同概率随机数字
public class ComputerGuess //给我们的代码,起个名字电脑猜拳!
{ public static void main(String []args)
{ //程序一开始 屏幕会显示游戏规则
  System.out.println("开始三局两胜制猜拳游戏");//讲述游戏规则
  System.out.println("输入1代表剪刀");
  System.out.println("输入2代表石头");
  System.out.println("输入3代表布");
  int computerCount = 0;//定义电脑的总获胜数
  int peopleCount = 0;//定义玩家的总获胜数
  int i= 1;//定义三局循环,此处的三局不包括平局的情况,平局不在三局两胜的规则范围内
              //平局不会增加玩家或者电脑的总获胜数量
  for(;i<=3;)//此处也可用while 循环
  				//while (i<=3)
  {
   Scanner s = new Scanner(System.in);//新建控制台对象
   Random r = new Random();//新建随机数对象
   int s1 = s.nextInt();//把控制台获取到的值赋给s1,把玩家输入的数字存在s1变量中
   int r1 = r.nextInt(3)+1;//随机数获取到的值+1操作后赋值给r1,把电脑生产的随机数存在r1变量
   							//中
  	if(s1==r1)            //如果电脑的数值和玩家的数值相等是平局的情况,会不算次数所以		
  							//continue不算做本轮循环
   {
    System.out.println("双方平局");
    continue;
   }
   
   else if((s1==1&&r1==2)||(s1==2&&r1==3)||(s1==3&&r1==1))
   {							//机器胜利的情况 机器都胜利一共三张情况,全部都会算作次数
   								//所以执行后会把机器人得分+1。后面也会执行总局数的+1操作
    System.out.println("机器胜利");
    computerCount++;
   }
   else
   {							//剩下的情况就是玩家胜利,不满足前面两个if就会执行else操作
   								//此时执行后会把玩家得分+1。后面也会执行总局数的+1操作
    System.out.println("玩家胜利");
    peopleCount++;
   }
   if(peopleCount ==2||computerCount==2) 
   {							//如果满足在进行两局就单方全部胜利后会强行终止循环,此时
   								//break指令发生作用,跳出整个循环执行后续代码
    break;
   }
   i++;
   	}
		if(peopleCount ==2) 
		{//玩家赢两局显示玩家最终胜利
			System.out.println("三局两胜之后玩家最终获胜");
		}
		else 
		{//电脑赢两局后显示电脑最终胜利
			System.out.println("三局两胜之后电脑最终获胜");
		}
		
	
	}

}
总结:整合复习并练习本周内容的综合示例
使用了  1.for循环
		2.if else if else 选择分支结构
		3.break终止整个循环
		4.continue 跳出本轮循环,并不会执行后续代码










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值