java编写三人猜拳游戏 只要有人赢了三局,那就游戏结束 记录游戏次数,守望先锋平局加分吗、流局情况及三人输赢次数

Java程序设计实验报告;班级:X学号:50姓名:马一桃;实验题目:猜拳小游戏;实验要求:;用java编写一个人机对战的猜拳小游戏;实验内容:;1、问题分析过程:;人机猜拳:人可以通过选择出拳,通过键盘输入相应数;通过游戏规则判断双方的输赢,显示当局的输赢情况,;面向的对象有人、电脑以及游戏规则;2、主要实现代码:(要求有必要的注释):;im
Java程序设计实验报告
实验题目:猜拳小游戏
实验要求:
用java编写一个人机对战的猜拳小游戏。人选择性出拳,电脑随机出拳,判断输赢,记录输赢情况。有简单的操作界面。
实验内容:
1、问题分析过程:
人机猜拳:人可以通过选择出拳,通过键盘输入相应数字来实现。电脑则随机性出拳,由电脑产生随即数来实现。
通过游戏规则判断双方的输赢,显示当局的输赢情况,并记录当局的分数,并各方的输赢情况。游戏结束时显示双方的分数以及输赢情况。
面向的对象有人、电脑以及游戏规则。人、电脑都有实现自己出拳的方法,同时还要有判断各方输赢的方法。
2、主要实现代码:(要求有必要的注释):
import java.util.S
//通过import语句引入Scanner类
public class Game{
public static void main(String args[]){
//用户的初始分数为0
//电脑的初始分数为0 int z=0;
//开始时决战次数为0 System.out.println(&\n&); System.out.println(&猜拳游戏现在开始,准备好了吗?&); System.out.println(&===========游戏规则===========&); System.out.println(&
胜利加一分,否则不加分
&); System.out.println(&
当游戏结束时分高者为胜
&); System.out.println(&==============================&); Scanner shuzi = new Scanner(System.in);
//用户通过键盘输入 System.out.println(&是否要开始游戏?&+&\n&+&
String m = shuzi.next();
while(m.equals(&y&)) {
System.out.println(&请选择数字出拳:&); System.out.println(&1 石头
3 布&); int A = shuzi.nextInt();
//利用switch语句,用户实现出拳 switch(A){ case 1:
System.out.println(&我出拳: 石头&);
System.out.println(&我出拳: 剪刀&);
System.out.println(&我出拳: 布&);
int B = (int)((Math.random()*10)%3 + 1);
//电脑产生随机数,进行出拳
switch(B){
System.out.println(&电脑出拳: 石头&);
System.out.println(&电脑出拳: 剪刀&);
System.out.println(&电脑出拳: 布&);
//一局游戏判断输赢的过程
System.out.println(&哎呦,平局!再努力! &);
} z++; else if(((A==1)&(B!=3))||((A==2)&(B!=1))||((A==3)&(B!=2))){
System.out.println(&不错嘛,赢了!&);
} z++; else{
System.out.println(&唉,输了,得加油啊!&);
} y++; z++; System.out.println(&\n&);
System.out.println(&有种再来一局&+&\n&+&y/n&);
m = shuzi.next(); } System.out.println(&游戏结束& ); System.out.println(&对战的次数为&+z);
System.out.println(&你的分数:& +x);
System.out.println(&电脑的分数:&+y);
//最终比游戏结果的判断
System.out.println(&噢耶!完胜电脑!&);
} else if(x==y){
} System.out.println(&彼此彼此,水平相当么~&); else{ System.out.println(&不幸输了,改日再和你较量!&);
进行一局游戏结果
游戏最终结果的判断
3、实验心得体会:
3.1出现的问题及解决方案
(1)在编译源文件时,出现了这么个问题
这是一个编码的问题。Java中采用Unicode字符编码,而选用UTF-8或UTF-16,而非GBK编码。我们也用命令行来编译java文件时,由于编码格式的问题,这种时候就会出现错误编码 GBK 的不可映射字符。我们用的命令行敲的java命令默认是用本机的编码格式,所以才出现了GBK这个字眼。解决这个问题当然是指定在编译时的编码格式。
(2)还遇到一个问题,java源文件能成功的通过编译。但是,当执行java命令时,出现了“错误:找不到或无法加载主类”的问题。既然编译时成功了,说明语法是没有错误的。检查了下环境变量,发现路径配置并没有完全正确。在classpath和path的变量值上,%java_home%\lib\dt.%java_home%\lib\tools.jar以及%java_home%\bin语句前都没有“. ;”符号,因此执行java命令时,无法执行,出现了“错误:找不到或无法找到主类”这样的问题。添加符号后,程序可正常执行。
3.2心得体会
1.通过对猜拳游戏的编写,深刻认识到了Java面向对象这一重要思想;
2.编译过程中,环境变量的设置,是很重要的。了解的PATH、CLASSPATH的作用;
3.写代码的过程必须仔细,经常由于不细心导致代码出错;
4.应该多学多写多练,在实践中熟悉应用代码。
包含各类专业文献、中学教育、行业资料、文学作品欣赏、应用写作文书、外语学习资料、幼儿教育、小学教育、16Java程序设计人机猜拳等内容。 
 Java 程序设计 人机猜拳小游戏 实验报告 专业: 班级: 学号: 姓名: 指导老师: 计算机科学与技术专业 摘要 面向对象方法是一种把面向对象的思想应用于软件开发过程...  { /** * 人机互动版猜拳游戏 * 程序入口 */ public static void main(...(); } } 2.Person 类 package com.game. import java.util.S...  班级 13 级 1 班 地点 8―410 教师 夏石莹 一、实验目的本课程设计所要求达到的目的:通过 Java 程序设计的一些重要理论基础来实现“人机 猜拳小游戏”的功能。...  Java人机猜拳源代码_计算机软件及应用_IT/计算机_专业资料。Java人机猜拳源代码 ...java猜拳游戏代码 3页 1下载券
Java程序设计人机猜拳 4页 2下载券 ©...  Java 程序设计 人机猜拳小游戏 实验报告 专业: 班级: 学号: 姓名: 指导老师: 计算机科学与技术专业 Java 程序设计基础实验报告 班级: 学号: 姓名: 一、实验目的...  通过 Java 程序设计的一些重要理论基础来实现“人机猜拳小游戏”的功能。 通过利用所学到的计算科学的理论知识,提高解决实际问题的能力,增强运算、 编程和使用技术...  Java 程序设计实验报告班级: 学号: 姓名: 实验题目:猜拳小游戏 实验要求: 用 java 编写一个人机对战的猜拳小游戏。人选择性出拳,电脑随机出拳,判断 输赢,记录...  //JAVA 人机猜拳小游戏代码 import java.util.S public class guess{ public static void main(String[] args){ Scanner in=new Scanner(System.in); ...  人机猜拳_计算机软件及应用_IT/计算机_专业资料 暂无评价|0人阅读|0次下载|举报文档 人机猜拳_计算机软件及应用_IT/计算机_专业资料。import java.util.S ...2687人阅读
我的Java路(3)
这是本学期的java作业:
java编写一个人机对战的猜拳小游戏。人选择性出拳,电脑随机出拳,判断输赢,记录输赢情况。有简单的操作界面。
学了一个学期的Java,感觉收获还挺多的。第一次用Java写小游戏,感觉貌似很难。刚开始没有什么思路,看了老师给出的例子程序,似乎有了点头绪。开始动手敲代码。遇到问题难免的,后来总算还是完成了作业。下面进行一下总结。
首先奉上源代码:
import java.util.S
//通过import语句引入Scanner类
public class Game{
public static void main(String args[]){
//用户的初始分数为0
//电脑的初始分数为0
//开始时决战次数为0
System.out.println(&\n&);
System.out.println(&猜拳游戏现在开始,准备好了吗?&);
System.out.println(&===========游戏规则===========&);
System.out.println(&
胜利加一分,否则不加分
System.out.println(&
当游戏结束时分高者为胜
System.out.println(&==============================&);
Scanner shuzi = new Scanner(System.in);
//用户通过键盘输入
System.out.println(&是否要开始游戏?&+&\n&+&
String m = shuzi.next();
while(m.equals(&y&)) {
System.out.println(&请选择数字出拳:&);
System.out.println(&1 石头
int A = shuzi.nextInt();
//利用switch语句,用户实现出拳
switch(A){
System.out.println(&我出拳: 石头&);
System.out.println(&我出拳: 剪刀&);
System.out.println(&我出拳: 布&);
int B = (int)((Math.random()*10)%3 + 1);
//电脑产生随机数,进行出拳
switch(B){
System.out.println(&电脑出拳: 石头&);
System.out.println(&电脑出拳: 剪刀&);
System.out.println(&电脑出拳: 布&);
//一局游戏判断输赢的过程
System.out.println(&哎呦,平局!再努力! &);
else if(((A==1)&(B!=3))||((A==2)&(B!=1))||((A==3)&(B!=2))){
System.out.println(&不错嘛,赢了!&);
System.out.println(&唉,输了,得加油啊!&);
System.out.println(&\n&);
System.out.println(&有种再来一局&+&\n&+&y/n&);
m = shuzi.next();
System.out.println(&游戏结束& );
System.out.println(&对战的次数为&+z);
System.out.println(&你的分数:& +x);
System.out.println(&电脑的分数:&+y);
//最终比游戏结果的判断
System.out.println(&噢耶!完胜电脑!&);
else if(x==y){
System.out.println(&彼此彼此,水平相当么~&);
System.out.println(&不幸输了,改日再和你较量!&);
1、问题分析过程:
人机猜拳:人可以通过选择出拳,通过键盘输入相应数字来实现,这用到Java中的Scanner类;
电脑则随机性出拳,由电脑产生随即数来实现,用到&Math.random()&方法; & & & & & & & & &&&//Math.random():产生一个[0,1)之间的随机数
通过游戏规则判断双方的输赢,显示当局的输赢情况,并记录当局的分数,并各方的输赢情况。游戏结束时显示双方的分数以及输赢情况;
定义x,y,变量,分别记录双方的分数;
定义变量y来记录双方对战的次数。
2、遇到的问题
(1)在编译源文件时,出现了这么个问题
这是一个编码的问题。Java中采用Unicode字符编码,而选用UTF-8或UTF-16,而非GBK编码。我们也用命令行来编译java文件时,由于编码格式的问题,这种时候就会出现错误编码 GBK 的不可映射字符。我们用的命令行敲的java命令默认是用本机的编码格式,所以才出现了GBK这个字眼。解决这个问题当然是指定在编译时的编码格式。
(2)还遇到一个问题,java源文件能成功的通过编译。但是,当执行java命令时,出现了“错误:找不到或无法加载主类”的问题。既然编译时成功了,说明语法是没有错误的。检查了下环境变量,发现路径配置并没有完全正确。在classpath和path的变量值上,%java_home%\lib\dt.%java_home%\lib\tools.jar以及%java_home%\bin语句前都没有“.
;”符号,因此执行java命令时,无法执行,出现了“错误:找不到或无法找到主类”这样的问题。添加符号后,程序可正常执行。
下面是运行结果:
&&&&1.通过对猜拳游戏的编写,深刻认识到了Java面向对象这一重要思想;
&&&&2.编译过程中,环境变量的设置,是很重要的。了解的PATH、CLASSPATH的作用;
& & 3.写代码的过程必须仔细,经常由于不细心导致代码出错;
& & 4.应该多学多写多练,在实践中熟悉应用代码。
/*Math.random():
产生一个[0,1)之间的随机数;
public class m{
public static void main(String args[]){
while(b&=a){
System.out.println(Math.random());
返回指定范围的随机数(m-n之间)的公式:Math.random()*(n-m)+m。public class m{
public static void main(String args[]){
while(b&=a){System.out.println(Math.random()*(10-5)+5);
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:12533次
排名:千里之外
(3)(1)(1)(2)(1)}

我要回帖

更多关于 三国杀平局 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信