人机猜拳【思路】

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
String name ="匿名";//名字
int score =0;//积分
/**
*出拳
*@return出拳结果:1.剪刀2.石头3.布
*/
public int showFist(){
//接收用户的选择
Scanner input =new Scanner(System.in);
System.out.print("\n请出拳:1.剪刀2.石头3.布(输入相应数字):");
System.out.println("\n\t\t***************");
SysΒιβλιοθήκη Baiduem.out.println("\t\t**猜拳,开始**");
System.out.println("\t\t***************");
System.out.println("\n\n出拳规则:1.剪刀,2.石头,3.布");
int show=input.nextInt();
//输出出拳结果,并返回
switch(show){
case 1:
System.out.println("你出拳:剪刀");
break;
case 2:
System.out.println("你出拳:石头");
break;
case 3:
System.out.println("你出拳:布");
System.out.println("结果:和局,真衰!嘿嘿,等着瞧吧!\n"); //平局
}else if((perFist==1&&compFist==3)||(perFist==2&&compFist==1)||(perFist==3&&compFist==2)){
System.out.println("结果:恭喜,你赢了!"); //用户赢
/**
*游戏类类完全版
*阶段7:功能扩展
* @param <computer>
*
*/
public class Game<computer> {
Person person; //甲方
Computer computer; //乙方
int count;//对战次数
/**
*初始化
*/
public void initial(){
Game game=new Game();
game.initial();
game.startGame();
}
}
2.Person类
package com.game.guess;
import java.util.Scanner;
/**
*用户类
*阶段1完成
* @param <Scanner>
*/
public class Person {
if(role==1){
computer.name="刘备";
}else if(role==2){
computer.name="孙权";
}else if(role==3){
computer.name="曹操";
}
//扩展功能1:输入用户姓名
/*输入用户姓名*/
System.out.print("请输入你的姓名:");
先建立个Game包
然后我做的是分了5个类来做的
TestStartGuess类
package com.game.guess;
public class TestStartGuess {
/**
*人机互动版猜拳游戏
*程序入口
*/
public static void main(String[] args) {
case 2:
System.out.println(name+"你出拳:石头");
break;
case 3:
System.out.println(name+"你出拳:布");
break;
}
return show;
}
}
4.Game类
package com.game.guess;
import java.util.Scanner;
Scanner input=new Scanner(System.in);
String exit="n"; //退出系统
do{
initial();//初始化
/*选择对方角色*/
System.out.print("请选择对方角色:(1:刘备,2:孙权,3:曹操):");
int role=input.nextInt();
int perFist; //用户出的拳
int compFist; //计算机出的拳
while(start.equals("y")){
/*出拳*/
perFist=person.showFist();
compFist=computer.showFist();
/*裁决*/
if((perFist==1&&compFist==1)||(perFist==2&&compFist==2)||(perFist==3&&compFist==3)){
person=new Person();
computer=new Computer();
count=0;
}
/**
*开始游戏
*/
@SuppressWarnings("resource")
public void startGame(){
System.out.println("-------欢迎进入游戏世界-------\n");
*/
public int showFist(){
//产生随机数
int show =(int)(Math.random()*10)%3+1;//产生随机数,表示电脑出拳
//输出出拳结果并返回
switch(show){
case 1:
System.out.println(name+"你出拳:剪刀");
break;
person.name=input.next();
System.out.println(person.name+"VS"+computer.name+"对战\n");
//扩展功能1结束
System.out.print("要开始吗?(y/n)");
String start=input.next();//开始每一局游戏
break;
}
return show;
}
}
3.Computer类
package com.game.guess;
/**
*计算机类
*阶段2完成
*/
public class Computer{
String name="电脑";//名字
int score = 0;;//积分
/**
*出拳
*@return出拳结果:1.剪刀2.石头3.布
相关文档
最新文档