先建立个Game 包然后我做的就是分了 5 个类来做的TestStartGuess 类package com、game、guess; public class TestStartGuess { /**
* 人机互动版猜拳游戏
* 程序入口
*/ public static void main(String[] args) { Game game=new Game(); game、initial();
game、startGame();
}
}
2、Person 类
package com、game、guess; import java 、util 、Scanner;
/**
* 用户类
*阶段1 完成
* @param
*/ public class Person {
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、布(输入相应数字):"); int show=input 、nextInt();
// 输出出拳结果,并返回switch(show){ case 1:
System、out 、println(" 您出拳:剪刀"); break;
case 2:
System、out、printin("您出拳石头”);
break;
case 3:
System、out 、println(" 您出拳:布"); break;
}
return show;
}
}
3、Computer 类
package com、game、guess;
/**
*计算机类
*阶段2 完成
*/ public class Computer{
String name=" 电脑";// 名字
int score = 0;;// 积分
/**
*出拳
*@return 出拳结果:1 、剪刀2、石头3、布*/
public int showFist(){
// 产生随机数
int show =(int)(Math 、random()*10)%3+1;// 产生随机数, 表示
电脑出拳// 输出出拳结果并返回
switch(show){
case 1:
System、out 、println(name+" 您出拳:剪刀"); break;
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;
/**
* 游戏类类完全版
* 阶段7:功能扩展
* @param
*/
public class Game
/**
* 初始化
*/ public void initial(){ person=new Person(); computer=new Computer();
count=0; } /**
* 开始游戏
*/
@SuppressWarnings("resource")
public void startGame(){
System、out 、println(" ---- 欢迎进入游戏世界----- \n");
System、out 、println("\n\t\t***************");
System、out 、println("\t\t** 猜拳,开始**");
System、out 、println("\t\t***************");
System、out 、println("\n\n 出拳规则:1、剪刀,2、石头,3、布"); Scanner input=new Scanner(System、in);
String exit="n"; // 退出系统
do{ initial();// 初始化/* 选择对方角色*/
System、out 、print(" 请选择对方角色:(1:刘备,2:孙权,3:曹操):"); int role=input 、nextInt(); if(role==1){
computer、name="文U备";
}else if(role==2){
computer、name="孙权";
}else if(role==3){
computer、name="曹操";
}
// 扩展功能1:输入用户姓名
/* 输入用户姓名*/
System、out、print(" 请输入您的姓名:"); person 、name=input 、next();
System、out、println(person、name+"VS"+computer、name+"对战\n"); // 扩展功能1 结束
System、out 、print(" 要开始不?(y/n)");
String start=input 、next();// 开始每一局游戏
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)){ System、out、printin("结果:与局,真衰!嘿嘿,等着瞧吧!\n"); //平局
}else
if((perFist==1&&compFist==3)||(perFist==2&&compFist==1)||(perFist==3&&compFist==2)){ Sys tem、out、printin(" 结果:恭喜,您赢了!"); //用户赢
person、score++;
}eise{
System、out、println(”结果说:人_人,您输了,真笨!\n"); //计算机赢
computer 、score++;
}
count++;
System、out、println("\n 就是否开始下一轮(y/n):"); start=input 、
next();
}
/* 显示结果*/
showResult();
// 扩展功能3:循环游戏,知道退出系统
System、out、print("\n 要开始下一局不?(y/n):"); exit=input 、next();
System、out、println();
// 扩展功能3 结束
}while(!exit 、equals("n"));
System、out、println(" 系统退出!");
}
/**
* 显示比赛结果
*/
public void showResult(){
/* 显示对战次数*/
System、out、println(" --------------------------- ");
System、out、println(computer 、name+"VS"+person 、name);
System、out、println(" 对战次数:"+count);
//扩展功能2 :显示最终的得分
System、out、println("\n 姓名\t 得分");
System、out、println(person 、name+"\t"+person 、score);
System、out 、println(computer 、name+"\t"+computer 、score+"\n");
// 扩展功能2 结束
/* 显示对战结果*/
int result=calcResult(); if(result==1){
System、out 、println(" 结果:打成平手,下次再与您一分高下!");
}else if(result==2){
System、out 、println(" 结果:恭喜恭喜!"); // 用户获胜
}else{
System、out、println(" 结果:呵呵,笨笨,下次加油啊!"); //计算机获胜} System、out 、println(" ---------------------------- ");
}
/**
* 计算比赛结果
* @return1: 战平; 2: 用户赢; 3: 电脑赢
*/
public int calcResult(){
if(person 、score==computer 、score){ return 1;// 战平
}else if(person 、score>computer 、score){ return 2;// 用户赢
}else{
return 3;// 电脑赢
}
}
}
5、Start 类
package com、game、guess;
public class StartGuess {
public static void main (String[] args){
Game c = new Game();
c、initial();
c、startGame();
}
}
然后编译执行就0K 了
希望能帮到您
JAVA程序设计课程标准(2014级物联网应用技术专业) 专业带头人: 系主任: 教学中心: 批准日期: 二○一五年三月
《JA V A程序设计》课程标准 (基本信息) 课程编码: 课程类别:专业必修课 适应专业:2014级物联网应用技术专业 开设时间:2014-2015年度第二学期 总学时数:45 在线课时+翻转课堂课时:45 一、课程概述 (一)课程性质 《JA V A程序设计》是我们高级互联网软件开发工程师系列课程中主要课程之一,属专业必修课。通过学习JA V A 程序设计,使之能够掌握JA V A基础语法,掌握面向对象的程序设计思想,能够实现简单的JA V A程序开发解决实际问题。 (二)课程基本理念 本课程采用新的三部曲进行教学,符合职业教育特点;强调以实践为主线,注重培养实践能力。同时,促进学习者自主学习,实施现代职教课程在线学习与翻转课堂相结合的教学模式创新等理念。 (三)课程设计思路 本课程有JA V A基础语法、设计思想及综合应用3个阶段共6章,介绍购物管理系统的开发,并通过对程序逻辑和业务逻辑的锻炼,帮助学员建立基本的软件开发逻辑思维能力。采用现代职教课程线上学习与翻转课堂相结合的教学模式,总学时45,在线学习15课时,翻转课堂30课时。 二、课程教学目标 (一)总目标 学习完本课程后,能够掌握JA V A程序开发的基本流程,并能够熟练掌握JA V A基础语法,面向对象程序设计思想,能够利用所学基本知识解决简单的实
际问题。其中基本的操作部分放在现代职教课程自主学习时间。 (二)具体目标 能力目标:掌握JA V A程序开发的基本流程;掌握JA V A基础语法和面向对象程序设计思想; 知识目标:通过本课程的学习,能够实现基于JA V A程序解决简单的实际问题。 素质目标:通过学习完本课程,达到培养学生独立分析问题,解决问题的能力;拥有实事求是的学风和创新精神;具有培养良好的协作精神。 三、内容标准与要求 1、教学内容选取依据 根据行业企业发展需要、完成职业岗位实际工作任务所需要的知识、能力、素质要求和相应的职业资格标准,选取教学内容,并为学生可持续发展奠定良好的基础。 2、教学内容与学时分配
Java 程序设计 人机猜拳小游戏 实 验 报 告 专业:计算机科学与技术专业 班级: 学号: 姓名: 指导老师:
摘要 面向对象方法是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,它吸取了结构化程序设计的精华,以更接近人们通常思维的方式来处理问题,是一种全新的软件开发技术。 作为一种新的的编程语言,Java很大程度推广了面向对象的思想。随着计算机技术的发展,Java的强大展现出它不可替代的作用。Java的功能不仅体现在它网络方面的应用,对于应用程序设计、游戏设计等Java都能满足需求。 本文针对Java 的具体应用,设计了一个小游戏。根据游戏的规则,用户将可以和计算机进行简单对战。程序实现了友好的用户交互界面,让用户能很好地对游戏进行操作。 关键字:JAVA GUI 游戏 ABSTRACT The Object-Oriented Method is a method which apllies the Object-Oriented Design to the process of the software exploiture and directs the ploy of development. It extracts the prime of the Structured Design for Computer Programmers, deals matters with a folksy fashion, which is considered to be a grand new software-develop technique. As a new programming language, Java spread the Object-Oriented Design in a certain degree. With the development of the technique of computer, the insurmountable function of JA V A is exhibited for its’ mightines s. Not only applies in network, JA V A also can fulfill the requirement of the Application-Design and Game-Design. In this paper, to use the idiographic application of JA V A , I design a game called . Following the regular of the game, user can play a simple revalry with computer. This programme actualizes a folksy GUI mode, which will make user master game easily. Keywords: JA V A GUI Game
ACCP软件工程师专业介绍 ACCP软件工程师专业介绍 课程背景 主要学习JAVA、.NET、数据库、面向对象技术、网站技术、软 件工程、流行框架技术等,毕业后可从事软件开发相关的工作。教 学采用以项目为牵引、全程实训、按水平考核的方式以动手能力为 培养目标,以积累项目经验为目的,学习内容根据当前企业对岗位 能力的要求变化而不断更新。十五年来为推动中国信息产业的发展 输送了50多万软件人才。 培养目标 掌握用C#、JAVA语言编程、能够开发优质网站、Web应用程序、C/S、B/S架构应用程序、移动应用、游戏等商用化项目,从事网站 设计、网络营销、应用软件开发与维护、数据管理与维护等相关工 作的高级IT技术人才。培养掌握全程开发流程和相关框架技术,积 累一年以上的企业级商业应用项目经验,具备进一步发展晋升潜力 的优质就业人才。 培养对象 1、招生对象:年龄18周岁(含)以上,学历高中(含)以上包括非计算机专业大学生。 2、毕业学员:符合企业岗位入门需求、具有相当于1年至1年 半以上软件开发经验的软件开发工程师。 3、产品定位:主要适合18-25岁,高中/中专学历以上人群学习、转行用的职业课程,不是充电型职业课程。 课程特色
1、针对培养,全面提升就业能力 2、重点加强,着重训练职业素质 3、高效训练,确保达到训练目标 4、大幅提升,全程积累项目能力 课程设计理念 1、以就业为导向 根据企业招聘标准,确定培养目标; 根据企业使用的技术,确定“教什么”和“教到什么程度”; 根据学员认知过程,确定“怎么教”。 2、以职业素质为突破点 2.1全面训练,着重培养 2.2持续训练,跟踪考评 2.3精心设计,易于实施 3、以实用技能为核心——如何选择课程内容 3.1实用原则:不是求全求广,而是求精求专,选择实际工作中常用的实用技术; 3.280/20原则:包含两层意思,第一是重点讲解企业80%的时间在使用的20%的技术;第二是在第一点的选择基础上不讲解需要我们的学员花费80%的精力才能学会的 20%的内容; 3.3逐层深入,而非一步到位:对核心技能进行拆分,分散到多门课程或多个阶段讲解;
这是一个简单的猜拳游戏(剪子包子锤),让你与电脑对决。你出的拳头由你自己决定,电脑则随机出拳,最后判断胜负。 下面的代码会实现一个猜拳游戏,让你与电脑对决。你出的拳头由你自己决定,电脑则随机出拳,最后判断胜负。 代码实现: #include
} srand((unsigned)time(NULL)); // 随机数种子 computer=rand()%3; // 产生随机数并取余,得到电脑出拳 result=(int)gamer+computer; // gamer 为char 类型,数学运算时要强制转换类型 printf("电脑出了"); switch (computer) { case 0:printf("剪刀\n");break; //4 1 case 1:printf("石头\n");break; //7 2 case 2:printf("布\n");break; //10 3 } printf("你出了"); switch (gamer) { case 4:printf("剪刀\n");break; case 7:printf("石头\n");break; case 10:printf("布\n");break; } if (result==6||result==7||result==11) printf("你赢了!"); else if (result==5||result==9||result==10) printf("电脑赢了!"); else printf("平手"); system("pause>nul&&cls"); // 暂停并清屏 } return 0; } 代码分析 1) 首先,我们需要定义3个变量来储存玩家出的拳头(gamer)、电脑出的拳头(computer)和最后的结果(result),然后给出文字提示,让玩家出拳。 接下来接收玩家输入: scanf("%c%*c",&gamer); 注意:由于每次输入以回车结束,缓冲区中除了玩家输入的字母,还有回车符。回车符要跳过,以免影响下次输入。Scanf() 函数的格式控制字符串个数可以多于参数个数,scanf("%c%*c",&gamer);的作用是从缓冲区多输出一个字符(回车符),却不赋给任何变量。 玩家输入结束,使用switch 语句判断输入内容,65(A)、97(a)、66(B)、98(b)、67(C)、99(c)、68(D)、100(d)为相应字符的ASCII码。 注意:system("cls"); 语句的作用是清屏。System() 函数用来执行dos 命令,这里相当于在dos 里输入cls命令。 2) 玩家出拳结束,电脑开始出拳。
类和对象 1.简述类和对象之间的关系 2.对象的引用和对象本身分别存在哪块存储区? 3.方法签名由哪些部分组成? 4.创建一个Teacher类,要求描述姓名、性别、年龄、薪水,定义一个方法,用于在教师 原有薪水的基础上增加5000,再定义一个TeacherTest类,创建一个Teacher对象并初始化对象的各属性值,调用教师增加薪水的方法,并将增加薪水后的教师信息输出。5.小红养了两只猫,一只叫小黑,今年2岁,黑色,另一只叫小白,今年5岁,白色。请 编写一个程序,要求当用户输入小猫的名字时,就显示猫的名字、年龄和颜色。如果用户输入的小猫名字错误,则显示“小红没有养这只猫”。 封装、继承 1.编写一个类Student,代表学员,要求: 1)具有属性:姓名、年龄、性别、专业 2)具有方法:自我介绍,负责输出该学员的姓名、年龄、性别以及专业 3)具有两个带参数的构造方法: 第一个构造方法中,设置学员的性别为男,专业为Android,其余属性的值由参数 给定;第二个构造方法中,所有属性都由参数给定 编写测试类StudentTest进行测试,分别以两种方式对两个Student对象进行初始化,并分别调用他们的自我介绍方法,看看输出结果是否正确。 2.需求 1)定义一个(Person)类,包含属性:姓名,年龄,性别;写好相关的方法,能够构造的时候初始化或者后续修改属性值。 2)定义一个Employee类继承于Person类,包含新的属性:职位;写好相关的方法,能够构造的时候初始化或者后续修改属性值,重写equals方法,规则:当两个对 象的姓名,年龄,性别,职位都相等时返回true,否则返回false。 3)写一个测试类进行相关测试(要求可以打印对象的信息,能够比较对象是否"相等")。 效果:
Java程序设计实验报告 班级:11060341X 学号:50 姓名:马一桃 实验题目:猜拳小游戏 实验要求: 用java编写一个人机对战的猜拳小游戏。人选择性出拳,电脑随机出拳,判断输赢,记录输赢情况。有简单的操作界面。 实验内容: 1、问题分析过程: 人机猜拳:人可以通过选择出拳,通过键盘输入相应数字来实现。电脑则随机性出拳,由电脑产生随即数来实现。 通过游戏规则判断双方的输赢,显示当局的输赢情况,并记录当局的分数,并各方的输赢情况。游戏结束时显示双方的分数以及输赢情况。 面向的对象有人、电脑以及游戏规则。人、电脑都有实现自己出拳的方法,同时还要有判断各方输赢的方法。 2、主要实现代码:(要求有必要的注释): import java.util.Scanner; //通过import语句引入Scanner类 public class Game{ public static void main(String args[]){ int x=0; //用户的初始分数为0 int y=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"+" y/n"); String m = shuzi.next(); while(m.equals("y")) { System.out.println("请选择数字出拳:"); System.out.println("1 石头 2 剪刀 3 布"); int A = shuzi.nextInt(); //利用switch语句,用户实现出拳 switch(A){ case 1:
幼儿园中班游戏教案:猜拳游戏 Game teaching plan of kindergarten middle class: guessing fist game
幼儿园中班游戏教案:猜拳游戏 前言:本文档根据题材书写内容要求展开,具有实践指导意义,适用于组织或个人。便于学习和使用,本文档下载后内容可按需编辑修改及打印。 目标: 1.观察游戏卡片上的图案,理解游戏中"石头、剪子、布"相互克制的关系。 2.在翻动、覆盖、叠加卡片的过程中提高判断能力和手 眼协调能力。 准备: 1.自制16宫格游戏底板一块。 2.用KT板自制的并用透明胶包起来的"石头、剪子、布"单面图案卡片各5张,另外增加1张"石头"卡片,一共16 张游戏卡片,所有游戏卡片的背面为白底。 3.每张游戏卡片的大小与游戏底板16宫格的格子大小一致。 玩法:
1.两名幼儿游戏。游戏前,幼儿共同把"石头、剪子、布"游戏卡片打乱,然后将其图案朝下,任意覆盖在16宫格游戏底板上。 2.游戏时,一名幼儿先选择翻开任意一张游戏卡片,另一名幼儿也选择翻开一张游戏卡片,随后,幼儿要快速判断自己所翻的游戏卡片能否克制对方翻开的游戏卡片。如果能够克制,则可以把自己的卡片叠放在对方的卡片上,覆盖住它的图案,比如"石头"可以覆盖"剪子","剪子"可以覆盖"布","布"可以覆盖"石头"。如果两张卡片不能形成互相克制的关系,则保持原有的翻开状态。 3.两名幼儿依次轮流游戏,幼儿每翻开一张卡片,都要观察和判断自己的卡片能否将游戏底板上翻开的任意一张卡片克制住。如果能克制住,则马上进行叠加,即覆盖在那张或那叠卡片上;如果没有能克制住的对象,就让卡片继续保持翻开状态。 4.当游戏底板上的卡片被全部翻完时,游戏双方就用猜拳方法来决定每次谁先行动。每次猜拳获胜者可以选择将游戏底板上任意一组形成相互克制关系的卡片叠加在一起。 5.当游戏底板上没有相互克制的卡片时,游戏结束。
1-6章 1.测试内容:Java基础语法 输入若干个整数,以-1结束,-1之前所有的数,输出和、平均值、最大值、最小值 2.测试内容:数组 求出斐波那契数列的前20项存入数组中,并将数组中的结果遍历输出。 (1 1 2 3 5 8 13 21 34 55 89 144 233) 3.编写一段代码,输入年份,月份,打印出这个年月对应的月历 运行界面参考: 请输入年:2015 请输入月:2 日一二三四五六 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 第7章 1.测试内容:类和对象,字符串类API 输入自己的身份证号码,并由此号码输出自己的生日,年-月-日 运行界面参考: 请输入身份证号:310115************ 生日:2001年2月3日 2.测试内容:封装,继承,多态 用面向对象编程的思想,设计一个猜拳游戏,完成人机猜拳互动游戏的开发。 功能: 1)选取对战角色 2)猜拳 3)记录分数
效果图: 提示: 先思考这个程序中一共涉及到多少个类,需要创建多少个对象。 第7章之后 1.测试内容:集合和IO 使用List或Map,实现多个学员(含整形学号,字符型姓名)添加。 对姓名进行逆序排序,输出排序前所有学员,和排序后所有学员信息。 使用IO技术,学员信息可以实现保存和加载(二进制保存或文本保存二选一) 2.定义一个方法,可以计算出两个日期之间相差多少天 例如:2015年2月17日到2015年3月29日中间一共有多少天?
3.创建购物车实体类,模拟购物车功能(内部使用HashMap) 需求: 1)添加商品到购物车(输入商品的编号和数量) 2)删除商品(删除购物车中的指定购物项) 3)修改商品(修改商品的数量) 4)显示所购买的商品信息(按购买商品的总价进行升序显示) 4.有5辆火车要过山洞,但确保山洞同时只能有一辆火车通过(过山洞需要2秒),打印输 出火车通过的顺序。(过山洞的顺序是不可控的,只要保证同一时间只有一辆火车能通过山洞即可) 提示:使用线程同步 数据库 1.创建员工表(employee),要求包含字段(工号、姓名、年龄、性别、薪资、部门),主 键为工号。 要求cmd命令行完成以下操作:(禁止使用图形工具软件) 1)添加三条员工信息 分别是:1,张三,18 , 男,5000 , IT部门 3,李四,20,男,6000,市场部 2,小红,28,女,10000,人事部 2)删除关于“张三“的记录
吉林省经济管理干部学院 吉林经济职业技术学院 2013-2014学年第一学期 课程设计 项目类别:游戏设计 设计题目:猜拳小游戏 班级: 学号: 姓名: 校内教师: 企业教师: 设计日期:2013年12月9 日——2013年12月20日
一、设计目标 首先是JAVA语言的初级编程。其次JAVA语言的猜拳小游戏的编程及设计。有JAVA平台软件eclipse的使用。并且使用软件eclipse对猜拳小游戏进行编程,设计游戏算法,实现游戏功能。 二、目标描述 程序总体介绍和设计要求程序使用J2SE语言编写,使用标准JDK平台编译和运行。程序使用已创建的类,设计并实现一个类来玩游戏。根据游戏规则玩家将和电脑进行比赛。 在这个课程设计中,我们做成了一个人机猜拳的小游戏。游戏与我们平时玩的“剪刀、石头、布”是一样的玩法,只不过是玩家与电脑进行猜拳,并且电脑是随机出拳的。 三、设计过程
总体设计 3.1 程序主要功能: 程序总体介绍和设计要求程序使用J2SE语言编写,使用标准JDK平台编译和运行。 程序使用已创建的PairOfDice类,设计并实现一个类来玩游戏。根据游戏规则玩家将和电脑进行比赛。 3.2本程序设计有一下几点设计要求: 1)用可视化编程控件实现该程序。 2)人和电脑对战,你输入石头或剪子或布后,电脑会说“你赢了”,“你输了”或“平”。 3)在游戏结束时,要显示你赢了多少局,电脑赢了多少局,你们平了多少局 3.3 用户动作事件描述: 1)进行游戏 2)清零 3)对本次游戏的用户和电脑数据进行清零,即重新开始游戏。 3.4程序中所用类说明 用户自定义类 类名:SmallGame 作用:实例化对象 主要成员变量: a.Frame myFrm // 定义主窗体 b.TextArea myText // 定义文本编辑区 c.Button BfontOK, Bfind, Breplace, Bnext, Bcancel //定义和创建各按钮 https://www.wendangku.net/doc/797639930.html,bel Lf Lr, Ls //定义和创建各标签 e.MenuBar Mbbar //定义和创建主菜单 f.Menu Mfile,Medit,Mformation,Mhelp //定义和创建主菜单中的选项 g.Toolkit toolKit
南华大学计算机科学与技术学院实验报告 (2013 ~ 2014 学年度第一学期) 面向对象程序设 课程名称 实验名称人机猜拳游戏 姓名唐龙学号20139350106 专业船山软件班级13级1班 地点8—410 教师夏石莹
一、实验目的 本课程设计所要求达到的目的:通过Java程序设计的一些重要理论基础来实现“人机猜拳小游戏”的功能。通过利用所学到的计算科学的理论知识,提高解决实际问题的能力,增强运算、编程和使用技术资料的技能,通过实际问题的分析设计、编程和调试,掌握应用软件的分析方法和工程设计方法,能正确阐述设计和实验结果,逐步建立正确的全局观念。 二、实验设计与要求 问题定义:创建小游戏,实现电脑与玩家之间互动猜拳这主要功能,并能显示设置的图片,增加美观。 研究意义:通过本次程序设计,我掌握了Java语言的基本运用,提高了理论结合实际能力。 设计要求: 1)界面的左侧是电脑或者玩家的名字,让界面看起来一目了然。 2)系统界面的中间是电脑或者玩家出拳的图片。图片可以生动形象得表示出电脑或 者玩家出的拳,显示的图片在对话框中也相得益彰。在图片的下方会显示,人机 猜拳以后的输赢。 3)界面的右侧是三个剪刀石头布的按钮。玩家通过按钮出拳,电脑随机出拳,猜拳 的输赢结果在下方显示。 三、系统的主要功能 1.可以通过按钮的方式,与电脑进行猜拳游戏,电脑随机出拳; 2.可以显示出拳图片。 四、实验工具 Windows 7;jdk1.6.0_21;eclipse 五、项目实现
首先建立一个Test类,如下: import java.awt.Color; import java.awt.Image; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.AbstractButton; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; public class Test extends JFrame { JLabel jl,jl1; final JLabel jl2,jl3; JLabel jl4; public String person; public String m; int j; int i; final String[] arr = new String[3]; public void Win(String person) { arr[0] = "石头"; arr[1] = "剪刀"; arr[2] = "布"; person = arr[j]; i = (int) (Math.random() * 3); String c = arr[i]; //判断输赢 if (c.equals(person)) { jl4.setText("平手"); } else if (c.equals("剪刀") && person.equals("石头") || c.equals("石头")&& person.equals("布") || c.equals("布") && person.equals("剪刀")) { jl4.setText("你赢了"); } else { jl4.setText("你输了"); } }
目录 绪论............................................... 错误!未定义书签。 一、背景与意义..................................... 错误!未定义书签。 二、设计原理与方案................................. 错误!未定义书签。 一)方案....................................... 错误!未定义书签。 二)设计思路................................... 错误!未定义书签。 三)系统分析................................... 错误!未定义书签。 四)程序概要设计............................... 错误!未定义书签。 五)工作流程图................................ 错误!未定义书签。 六)程序框图.................................. 错误!未定义书签。 七)程序中所用类说明.......................... 错误!未定义书签。 八)程序运行效果及存在的问题................... 错误!未定义书签。 三、项目实现....................................... 错误!未定义书签。 一)程序用到的类库简介......................... 错误!未定义书签。 二)游戏主程序设计............................. 错误!未定义书签。 三)主界面PigPanel类......................... 错误!未定义书签。 四)具体实现.................................. 错误!未定义书签。 四、运行结果....................................... 错误!未定义书签。 一)结果截图................................... 错误!未定义书签。 二)系统在调度中经常出现的问题................. 错误!未定义书签。 五、心得........................................... 错误!未定义书签。 六、总结语......................................... 错误!未定义书签。 七、参考文献 (19)
//JAVA人机猜拳小游戏代码 import java.util.Scanner; public class guess{ public static void main(String[] args){ Scanner in=new Scanner(System.in); System.out.println("-----猜拳游戏-------"); System.out.println("请出拳(1.剪刀2.石头3.布)"); int person=in.nextInt(); int computer=(int)(Math.random()*3)+1; String Marks="拳头";//这是给人做一个标记; String Marks2="拳头";//这是给电脑做一个标记; switch(person){ case 1: Marks="拳头"; break; case 2: Marks="石头"; break; case 3: Marks="布"; break; } switch(computer){ case 1: Marks2="拳头"; break; case 2: Marks2="石头"; break; case 3: Marks2="布"; break; } if(person==computer){ System.out.println("你出的是:"+Marks+"电脑出的是:"+Marks2+"---平局"); }else if(person==1&&computer==2||person==2&&computer==3||person==3&&computer= =1){ System.out.println("你出的是:"+Marks+"电脑出的是:"+Marks2+"—_—你输了!"); }else{ System.out.println("你出的是:"+Marks+"电脑出的是:"+Marks2+"^_^你赢了!"); } }
第一个文件: public class Computer { String name; int score; public int showfist(){ int quan; quan=(int)(Math.random()*10); if(quan<=2){ quan=1; }else if(quan<=5){ quan=2; }else{ quan=3; } switch(quan){ case 1:System.out.println(name+"出拳:剪刀");break; case 2:System.out.println(name+"出拳:石头");break; case 3:System.out.println(name+"出拳:布");break; } return quan; } } 第二个文件: import java.util.Scanner; public class Game { int count=0; int countP=0; Person person=new Person(); Computer computer=new Computer(); Scanner input=new Scanner(System.in); public void initial(){ System.out.print("请选择你的角色(1.刘备 2.孙权 3.曹操):"); int juese=input.nextInt(); switch(juese){ case 1:https://www.wendangku.net/doc/797639930.html,="刘备"; break; case 2:https://www.wendangku.net/doc/797639930.html,="孙权"; break; case 3:https://www.wendangku.net/doc/797639930.html,="曹操"; break; } System.out.print("请选择对手角色(1.关羽 2.张飞 3.赵云):");
先建立个Game 包然后我做的就是分了 5 个类来做的TestStartGuess 类package com、game、guess; public class TestStartGuess { /** * 人机互动版猜拳游戏 * 程序入口 */ public static void main(String[] args) { Game game=new Game(); game、initial(); game、startGame(); } } 2、Person 类 package com、game、guess; import java 、util 、Scanner; /** * 用户类 *阶段1 完成 * @param
java人机猜拳 1.首先定义一个用户类:代码如下 package mypackage; import java.util.*; public class Person { String name=""; int score; public int showFist() { System.out.println("请出拳:1.剪刀2.石头3.布(输入相应数字)"); Scanner input =new Scanner(System.in); int number=input.nextInt(); switch(number) { case 1: System.out.println("玩家出:剪刀"); return number; case 2: System.out.println("玩家出:石头"); return number; case 3: System.out.println("玩家出:布"); return number; default: System.out.println("你出拳:剪刀"); return number; } } } 2.定义一个计算机类 package mypackage; public class Computer { int max =3; int min =1; int number= (int)(Math.random()*(max-min))+min; int score; String name="电脑"; public int showcomputer() { switch(number) { case 1:
摘要 面向对象方法是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,它吸取了结构化程序设计的精华,以更接近人们通常思维的方式来处理问题,是一种全新的软件开发技术。 作为一种新的的编程语言,Java很大程度推广了面向对象的思想。随着计算机技术的发展,Java的强大展现出它不可替代的作用。Java的功能不仅体现在它网络方面的应用,对于应用程序设计、游戏设计等Java都能满足需求。 本文针对Java 的具体应用,设计了一个小游戏。根据游戏的规则,用户将可以和计算机进行简单对战。程序实现了友好的用户交互界面,让用户能很好地对游戏进行操作。 关键字:JAVA GUI 游戏 ABSTRACT The Object-Oriented Method is a method which apllies the Object-Oriented Design to the process of the software exploiture and directs the ploy of development. It extracts the prime of the Structured Design for Computer Programmers, deals matters with a folksy fashion, which is considered to be a grand new software-develop technique. As a new programming language, Java spread the Object-Oriented Design in a certain degree. With the development of the technique of computer, the insurmountable function of JA V A is exhibited for its’ mightiness. Not only applies in network, JA V A also can fulfill the requirement of the Application-Design and Game-Design. In this paper, to use the idiographic application of JA V A , I design a game called . Following the regular of the game, user can play a simple revalry with computer. This programme actualizes a folksy GUI mode, which will make user master game easily. Keywords: JA V A GUI Game
Java猜拳小游戏程序设计实验报告Java程序设计实验报告 班级: 学号: 姓名: 实验题目:猜拳小游戏 实验要求: 用java编写一个人机对战的猜拳小游戏。人选择性出拳,电脑随机出拳,判断 输赢,记录输赢情况。有简单的操作界面。 实验内容: 1、问题分析过程: (1)首先分析猜拳游戏本身的玩法: 人选择性出拳,电脑随机出拳,判断输赢,记录输赢情况。 (2)用面向对象的思想来分析: 在游戏过程中有几个对象组成 人 电脑 游戏规则 抽象出3个类:Person、Computer、Game Person类有哪些属性和行为呢, 属性:名字name,输赢次数(比分)score 行为:出拳ShowFirst() 选择性 Computer类有哪些属性和行为呢, 属性:名字name,输赢次数(比分)score
行为:出拳showFist() 随机 Game类有哪些属性和行为呢, 属性:游戏的双方(person、computer)、对战局数count 行为:产生角色initial()、游戏规则startGame()、显示比赛结果showResult()、统计 比赛结果calcResul() 2、主要实现代码: import java.util.*; public class StartGame { public static void main(String[]args){ Game start = new Game();//实例化游戏类 start.initial(); //调用初始化方法 start.startGame(); //调用游戏开始方法 start.showResult(); //调用游戏结果显示方法 } } import java.util.*; public class Person { String name;//名字属性 int score;//积分属性 //出拳方法 public int showFist(){ System.out.print("\n请出拳:1.剪刀2.石头3.布(输入相应数字):"); Scanner input = new Scanner(System.in);
C语言猜拳游戏代码及分析 猜拳游戏需求分析说明书 1.引言 1.编写目的 小时候,我们喜欢以猜拳来赢得奖励。 现在,我们希望能开发一个猜拳的游戏。 2.定义 需求:用户解决问题或达到目标所需的条件或功能;系统或系统部件要满足合同、标准,规范或其它正式规 定文档所需具有的条件或权能。而且其很强的交互性及 简单易行性,可以让人在很短时间内熟悉它的操作方法,不论用户文化水平如何,都会很轻松的学会使用它。2.任务概述 1.目标 2.用户的特点 由于本程序简单易操作,交互性好,对用户没什么 特别要求。一般用户经过几分钟练系都可以熟悉本系统 的规则。 3.系统功能示例
3.需求细则 1. 对功能的规定 1.1 界面友好 属性:必选 描述:用户的一些操作前后做出一些必要的提示或确认。所有完成的功能都需要友好,例如: ● 增加失败提示; ● 删除失败和成功提示、删除前的确认; ● 修改失败和成功提示、修改前/后的确认; ● 查找失败提示、查找成功的确认; ● 退出系统时,要提示是否退出; ● 其它方面的界面问题;
1.2 用户注册 属性:必选 描述:登录界面可以用户注册,注册信息包含用户名和密码,例如: ● 不能使用已经存在的用户名 ● 密码不能少于6个字符 1.3 用户登录 属性:必选 描述:用户通过登录界面进行登录,必须输入正确的用户名和密码方可进入系统,例如: ● 提示输入用户名 ● 提示输入密码
● 用户名和密码验证,都符合则进入系统,不然回到 第一步,超过三次登录,则提示登录次数超过三次,退 出系统 1.4 开始游戏 属性:必选 描述:金额大于1的用户可以开始游戏 ● 下注:提示用户下注的金额数 ● 猜拳:(必须先下注,如果用户下注金额小于等于0,不能进行游戏)与电脑进行猜拳游戏,如果猜输了,扣除你的金额(由下注决定),胜利将随机获得1~5倍的下注 金额奖励 n提示:电脑随机出拳,胜利奖励也是随机的,例如: n随机获得1~5数字代码: