猜拳 Java

猜拳小游戏

需求

与电脑对战,选择要对战的电脑角色。自己用数字模拟出拳。输出对战场次以及胜负比分。

源码

类Test

public class Test {

	public static void main(String[] args) {
		GuessFist g =new GuessFist();
    	g.start();
	}

}

类Person

import java.util.Scanner;

public class Person {
	String name;
	  int score;
	  int count;
	 
	  public int showFist() {
		 Scanner input = new Scanner(System.in);
		 System.out.print("请出拳(1、剪刀 2、石头 3、布):");
		int fist;
		fist = input.nextInt();
		 switch(fist) {
		 case 1:
			 System.out.println("您出的是,剪刀");
			 break;
		 case 2:
			 System.out.println("您出的是,石头");
			 break;
		 case 3:
			 System.out.println("您出的是,布");
				 break; 
		 default:
			 System.out.println("您的出拳不正确!");
			     break;
		 }
		  return fist;
	  
	  }
}

类computer

public class Computer {
	String name;
	  int score;
	  int count;
	 
	  public int showFist() {
		  int fist = (int)(Math.random()*3+1);
		  switch (fist) {
		  case 1:
			  System.out.println(name+"出的是:剪刀");
			  break;
		  case 2:
			  System.out.println(name+"出的是:石头");
			  break;
		  case 3:
			  System.out.println(name+"出的是:布");
			  break;
		  default:
			  break;
		  }
		  return fist;
	  }
}

类GussFist

import java.util.Scanner;

public class GuessFist {
	 Computer computer = new Computer();
	   Person person = new Person();
			   
	   public void start() {
		  Scanner input = new Scanner(System.in) ;
		  System.out.println("******欢迎加入游戏世界******");
		  System.out.println("**************************");
		  System.out.println("*****     猜拳开始        *****");
		  System.out.println("**************************");
		  System.out.println();
		  System.out.println("出拳规则:1、剪刀 2、石头 3、布");
		  System.out.println("请选择对战角色(1、普京 2、特朗普 3、安倍)");
		  int role = input.nextInt();
		  switch(role) {
		  case 1:
		      computer.name = "普京";
		      break;
		  case 2:
	          computer.name = "特朗普";
	          break;
		  case 3:
	          computer.name = "安倍";
	          break;
	      default:
	    	  break;
		  }
		  System.out.print("请输入你的姓名:");
		  person.name = input.next();
		  System.out.println(person.name+"VS"+computer.name);
		  System.out.println();
		  System.out.println("要开始吗(Y/N):");
		  String isBegin = input.next();
		  System.out.println();
		  if(isBegin.equals("Y")) {
			  String answer = "Y";
			  while(answer.equals("Y")) {
				  int pFist = person.showFist();
				  int cFist = computer.showFist();
				  //判断输赢
				  if((pFist==1 &&cFist==3)
					  ||(pFist==2&& cFist == 1)
					  ||(pFist==3&& cFist == 2)){//人赢
				   System.out.print("恭喜,您赢了");
				   person.score++;
				   person.count++;
				   computer.count++;
				 }else if((pFist == 1 && cFist==2)
						||(pFist==2 && cFist==3)
						||(pFist==3 && cFist==1)) {
				   System.out.print("很遗憾,"+computer.name+"赢了!"); 
				   computer.score++;
				   person.count++;
				   computer.count++;
				 }else {
					 System.out.println("平局!");
					 person.count++;
					 computer.count++;
				 }
	            System.out.println();
	            System.out.print("是否下一轮(Y/N):");
	            answer = input.next();
	            if(answer.equals("N")) {							
	            	
	            	
	            
	            System.out.println("----------------------------------------------");
	            System.out.println(computer.name+"\tVS\t"+person.name);
	            System.out.printf("对战次数:%d",person.count );
	            System.out.println();
	            System.out.println("姓名\t" + "得分");
	            System.out.println(person.name +"\t"+ person.score);
	            System.out.println(computer.name+ "\t"+ computer.score);
	            }
			  }
		  }
	   }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值