Java实现简单猜拳游戏

本文实例为大家分享了java实现简单猜拳游戏的具体代码,供大家参考,具体内容如下

看网上的猜拳游戏那么多,但都是用switch输入数字,所以用if嵌套,写一个简单的猜拳游戏

package game;
import java.util.scanner;
import java.util.random;//生成随机数,利用switch生成随机的石头,剪刀或者布

public class caiquan {
 public static void main(string[] args) {
 while(true)
 {
 
 system.out.println("请输入石头,剪刀或者布");
 scanner sc = new scanner(system.in);
 string quantou = sc.next();
 int month = (int)(3*math.random())+1;
 string com;//为电脑的出拳生成字符串
 //电脑出拳
 switch(month)
 {
 case 1:
 com = "石头";
 break;
 case 2:
 com = "剪刀";
 break;
 case 3:
 com = "布";
 break;
 }
 if(quantou.equals("石头"))
 {
 if(month==1)
 {
 system.out.println("你出的是石头,电脑出的是石头");
 system.out.println("平局");
 }
 else if(month==2)
 {
 system.out.println("你出的是石头,电脑出的是剪刀");
 system.out.println("你赢了");
 }
 else if(month==3){
 system.out.println("你出的是石头,电脑出的是布");
 system.out.println("你输了");
 }
 }
 else if(quantou.equals("剪刀"))
 {
 if(month==1)
 {
 system.out.println("你出的是剪刀,电脑出的是石头");
 system.out.println("你输了");
 }
 else if(month==2)
 {
 system.out.println("你出的是剪刀,电脑出的是剪刀");
 system.out.println("平局");
 }
 else if(month==3){
 system.out.println("你出的是剪刀,电脑出的是布");
 system.out.println("你赢了");
 }
 }
 else if(quantou.equals("布"))
 {
 if(month==1)
 {
 system.out.println("你出的是布,电脑出的是石头");
 system.out.println("你赢了");
 }
 else if(month==2)
 {
 system.out.println("你出的是布,电脑出的是剪刀");
 system.out.println("你输了");
 }
 else if(month==3) {
 system.out.println("你出的是布,电脑出的是布");
 system.out.println("平局");
 }
 }
 
 }
 
 }
}

再为大家补充一段猜拳游戏代码:

import java.util.scanner;
import java.util.random;
public class guessingboxing {

 public static void main(string[] args) {
 while(true) {
 system.out.println("----猜拳游戏----");
 system.out.println("请出拳(1、剪刀 2、石头 3.布)");
 scanner in=new scanner(system.in);
 /**
 * people表示人出的数
 * computer表示电脑出的数
 */
 int people=in.nextint(); 
 int computer=(int)(math.random()*3+1);
 f(people,computer);
 system.out.println();
 system.out.println();
 //输入完成,开始判断输赢
 }
 }

 private static void f(int people, int computer) {
 string logo1="剪刀"; //数字字符化
 string logo2="剪刀";
 switch(people) {
 case 1:
 logo1="剪刀";
 break;
 case 2:
 logo1="石头";
 break;
 case 3:
 logo1="布";
 }
 switch(computer) {
 case 1:
 logo2="剪刀";
 break;
 case 2:
 logo2="石头";
 break;
 case 3:
 logo2="布";
 }
 if(people==computer) {
 system.out.println("平局 你出的是:"+logo1+" 电脑出的是"+logo1);
 }else
 if(people==1&&computer==2||people==2&&computer==3||people==3&&computer==1) {
 system.out.println("你输了 你出的是:"+logo1+" 电脑出的是"+logo2);
 }else
 system.out.println("你赢了 你出的是:"+logo1+" 电脑出的是:"+logo2); 
 } 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

相关推荐:

如何在Python中实现基于用户协同过滤的简单推荐系统?

直接用scipy.spatial.distance.cosine易出错,因其默认对齐全部维度(含大量0)、不处理NaN、未中心化,导致稀疏数据下相似度失真;应先构建用户-物品矩阵并保留NaN,再基于共同评分项子集计算余弦相似度。 为什么直接用scipy.spatial.distance.cosine...

如何通过Python Flask构建一个简单的CMS系统_结合Flask-Admin

Flask-Admin不能直接当CMS用,但可快速搭建CMS管理后台骨架;它仅提供模型驱动的CRUD界面,不包含前端展示、权限分级、内容路由和模板渲染等CMS核心功能。 Flask-Admin能不能直接当CMS用? 不能,但可以快速搭出CMS的管理后台骨架。Flask-Admin本质是模型驱动的CR...

Python使用RabbitMQ实现简单分布式爬虫的任务分发系统

直接用pika发送任务会丢消息,是因为默认未启用发布确认、队列未持久化、消息未设delivery_mode=2;漏掉任一机制,RabbitMQ重启或消费者异常时消息即丢失。 为什么直接用pika发送任务会丢消息? 默认情况下,pika的channel.basic_publish()不保证消息持久化,...

为什么Python 3.11的Task Groups让并发更简单_体验新版asyncio特性

TaskGroup的核心是结构化并发控制而非简化并发——它通过asyncwith强制生命周期管理,要求所有子任务必须用tg.create_task()创建并自动收尾,异常用except*捕获,不保证结果顺序,本质是“关门清点”资源。 TaskGroup不是让并发“变简单”,而是让并发不崩得那么难看—...

Python 反向猜数字游戏:修复重复打印问题

本文教你修正反向猜数字游戏中的重复输出缺陷,通过调整print(c)的执行时机,确保每次猜测反馈只显示一次当前猜测值。 本文教你修正反向猜数字游戏中的重复输出缺陷,通过调整`print(c)`的执行时机,确保每次猜测反馈只显示一次当前猜测值。 在反向猜数字游戏中,程序需根据用户输入(b表示“太大”,...

怎样在Python中实现简单的指纹识别验证功能_调用OpenCV库对比

OpenCV无法直接实现可靠指纹识别,因其缺乏特征点提取等专用算法;推荐使用fingerprint-recognition库,支持注册与验证流程,需多张图注册、设定分数阈值(40–60),且依赖专用硬件采集高质量灰度图。 OpenCV本身不支持指纹识别验证 直接用cv2读图、缩放、二值化,甚至做简单...