问题描述:

一、主要功能:1.电脑与人互动,实现“剪刀、石头、布”的游戏;1.1 角色登陆:***********************欢迎进入猜拳游戏***********************请选择一个角色:1.安培晋三      2.奥巴马      3.普京    1.2 角色选定后,游戏开始:角色已选定,欢迎您,奥巴马!游戏开始!请出拳:1.石头      2.剪刀      3.布奥巴马出拳:石头匿名出拳:石头此局双方平手!是否继续?1/0    2.比赛结束时,给出比赛结果:比赛结束,本场比赛共进行了6局!奥巴马胜利了0局!匿名胜利了4局!双方平手:2局!太臭了!回家卖红薯吧!3. 可根据现实生活逻辑进行适当调整。

代码实现:

/*** 用户选择类*/
public class Progress {private static int n = 1;//用户选择角色private static int m = 1;//用户出拳private static int nm = 0;//比赛总场数private static String [] str = {"安培晋三 ","奥巴马","普京"};//角色private static int i;//是否继续private static BiSai bs;//结果处理类public static void main(String[] args) {System.out.println("********************\n***欢迎进入猜拳游戏***\n********************");System.out.println("请选择一个角色:\n1.安培晋三\t 2.奥巴马\t 3.普京");System.out.print("请输入:");Scanner in = new Scanner(System.in);//用户选择角色do {if(n<=0||n>=4){System.out.print("输入的字符非法,请从新输入:");}n = in.nextInt();} while (n<=0||n>=4);System.out.println("角色选定,欢迎您,"+str[n-1]+"!游戏开始!");System.out.println("出拳规则:1:石头\t 2:剪刀\t 3:布");//用户开始进行比赛bs = new BiSai();do {nm +=1;System.out.println("猜拳大赛,第"+nm+"回合");System.out.print("请出拳:");m = in.nextInt();if(m<=0||m>=4){do {System.out.print("输入的字符非法,请从新输入:");m = in.nextInt();} while (m<=0||m>=4);}String s = bs.getQuan(m);System.out.println(str[n-1]+"出拳:"+s);int t = bs.getPrograme(m);switch (t) {case 1:System.out.println("此局平手");break;case 2:System.out.println(str[n-1]+"胜利");break;case 3:System.out.println("匿名获胜");break;default:break;}System.out.print("是否继续?1/0:");i = in.nextInt();do {if(i!=1&&i!=0){System.out.print("输入的字符非法,请从新输入:");i = in.nextInt();}} while (i!=0&&i!=1);} while (i==1);bs.getJiGuo(str[n-1], nm);//比赛结果
    }}

/*** 结果评定类*/
public class BiSai {private static int n = 0;//机器获胜次数private static int m = 0;//机器平的次数private static int nm = 0;//机器败的次数private static int mn = 0;//机器出的拳public int getPrograme(int i){int flag = 0;Random r = new Random();mn = r.nextInt(3);System.out.println("匿名出拳:"+ getQuan(mn+1));if(i==mn+1){m +=1;flag = 1;}else{if((i==1&&mn+1==2)||(i==2&&mn+1==3)||(i==3&&mn+1==1)){nm +=1;flag = 2;}else{n +=1;flag = 3;}}return flag;}public void getJiGuo(String s, int j){System.out.println("比赛结束,本场比赛共进行"+j+"局!");System.out.println(s+"胜利了"+nm+"局");System.out.println("匿名胜利了"+n+"局");System.out.println("双方平手了"+m+"局");if(nm>n){System.out.println("手气太棒了,可以去买彩票了!");}else{if(nm<n){System.out.println("太臭了!回家卖红薯吧!");}else{System.out.println("还不错,平分秋色!");}}}public String getQuan(int q){String s = "";switch (q) {case 1:s = "石头";break;case 2:s = "剪刀";break;case 3:s = "布";break;default:break;}return s;}}

运行结果:

  

转载于:https://www.cnblogs.com/AndroidJotting/p/5006749.html

JAVA基础代码分享--模拟人机猜拳系统相关推荐

  1. JAVA基础代码分享--学生成绩管理

    问题描述: 从键盘读入学生成绩,找出最高分,并输出学生成绩等级. 成绩>=最高分-10  等级为'A'   成绩>=最高分-20  等级为'B' 成绩>=最高分-30  等级为'C' ...

  2. niit java证书_NIIT认证Java基础全真模拟试题

    NIIT认证Java基础全真模拟试题 一.判断题(每题2分,共16分) 1. Java的字符类型采用的是Unicode编码,但所占字节由具体软硬件环境决定. ( ) 2.Java的源代码中定义几个类, ...

  3. Java基础代码入门练习题(你也来试试?)

    Java 基础代码练习题 1.一直青蛙在一口11米深的井底向上爬,白天向上爬3米,晚上向下滑2米,总共需要几天可以爬出. package com.Work;public class Frog_Dome ...

  4. 人机猜拳代码python_python实现人机猜拳小游戏

    今天的这篇文章呢是对人机猜拳小游戏--石头剪刀布的一个描述以及代码展现 石头剪刀布游戏代码的简介:关于石头剪刀布这个小游戏,大致得到思路就是,玩家出一个手势,然后电脑再随机出一个手势,最后再判断是玩家 ...

  5. Java基础之吃货联盟订餐系统Version1.0

    注意:此项目为刚学完Java基础至数组的入门程序. 吃货联盟订餐系统Version1.0是在数组的基础上完成的一个小项目,由于只是运用数组实现了一些简单的功能, 所以我管它叫Version1.0,即1 ...

  6. Java基础代码语法讲解上

    因为最近有多余的时间,可以码字,Java基础虽然真的很基础,但是我学起来又慢又吃力,我想不能忘记自己学语言学不会的样子. 这篇文章我决定写的很零碎,而且想尽量写的很通俗易懂,来锻炼自己说人话的能力. ...

  7. 宝付撰写java基础代码

    Java编程语言占比: 据官方数据统计,在全球编程语言工程师的数量上,Java编程语言以900万的程序员数量位居首位. 而且很多软件的开发都离不开Java编程,因此其程序员的数量最多.而在以Java编 ...

  8. java基础代码题(终)

    101.下列不属于java注释的有( ) C A://注释内容 B: /*注释内容*/ C: D: /** * 注释内容 */ 102.下面语句中,正确的是( ) . B A:boolean b=&q ...

  9. 【Stata】Stata论文实证分析的基础代码分享

    目录:Stata论文实证分析的基础代码 一.前言 二.基础代码 2.1 描述性分析 2.2 数据处理 2.3 相关性分析 2.4 主回归模型之前的一些数据检验 2.5 主回归模型 2.6 稳健性检验 ...

最新文章

  1. server环境信息【C#代码获取】
  2. python安装没有pip选项_python-3.x – 在ubuntu上没有pip的python安装
  3. java接口如何接受语音参数_Java 是如何优雅地实现接口数据校验的?
  4. Tracking 的SimTrack 以及 4D seg
  5. python背单词小程序_python背单词小程序
  6. 零跑C-more收获更多期待,而零跑S01还在追求更多的订单 | 2019 上海车展...
  7. 最简单的Windows CE应用程序
  8. Java、JSP汽车租赁管理系统
  9. 前端之路:一款轻量的tooltip插件tippy.js
  10. 安卓各国语言对应缩写和时区查询
  11. 【经验总结】Centos8安装X264,X265,OPUS,AAC,FFmpeg一次性解决方案
  12. C语言示例,三个骰子
  13. 嵌入式软件测试之初体验
  14. 大学生查重网站有哪些
  15. LockSupport的park和unpark的原理
  16. 鹏业安装算量软件界面及部分功能按钮介绍
  17. 循环神经网络重要的论文博客汇总
  18. Matlab基于主成分分析(PCA)的平面拟合—点云处理及可视化第2期
  19. java实现沙箱测试环境支付宝支付(demo)和整合微信支付和支付宝支付到ssm
  20. 虚拟化入门——vCenter Serve

热门文章

  1. 那些年我们排过的序之希尔排序
  2. python 栈和队列 排序 初级数据结构
  3. php动态修改配置文件
  4. MyEclipse8.5注册码 到2015年
  5. nginx php win平台配置
  6. .net中用css控制GridView样式
  7. DWR取session,request,response
  8. mysql 索引语法_MySQL 索引:语法及案例剖析
  9. 神经网络与机器学习 笔记—时序模式、非线性滤波
  10. Windows核心编程 第十九章 DLL基础