Java实验项目二——猜数游戏
1 /*
2 * Description:定义比较类,实现两个数的比较
3 *
4 * */
5
6
7 package compare;
8
9 import dao.Operate;
10
11 public class Compare {
12
13 private static boolean flag = true;
14
15 public Compare() {
16
17 while( flag ) {
18
19 int count = 0; //统计用户输入的次数
20 System.out.print( "游戏开始:" );
21 int random = Operate.getRandom(); //取得随机数
22 System.out.println( "正确答案为 " + random );
23
24 for( count = 1; count <= 10; count++ ) { //十次机会
25
26 int input = Operate.getInput(); //取得用户输入的数据
27
28 switch( compare(random, input) ) { //进行两个数的比较
29
30 case 1:System.out.println( "输入值偏大!" );break;
31
32 case -1:System.out.println( "输入值偏小!" );break;
33
34 case 2:
35 case 0: {
36 Compare.flag = Compare.ifOver(count); //判断count的值
37 count = 100;
38 break;
39 }
40
41 }
42 }
43
44 if( count == 11 ) { //十次机会用完,判断是否结束游戏
45 Compare.flag = ifOver(count);
46 }
47
48
49 }
50
51 System.out.println( "游戏结束!" );
52
53
54 }
55
56
57 public static int compare(int x1,int x2) { //定义比较方法,x1为随机数,x2为用户输入的数
58
59 if( x1 < x2 ) { //用户输入的数过大
60
61 return 1;
62 }else if( x1 > x2 ) { //用户输入的数过小
63
64 return -1;
65 }else { //输入正确
66
67 return 0;
68 }
69 }
70
71 public static boolean ifOver(int count) { //通过count的值判断是否结束游戏或者进入下一轮
72
73 if( count <= 10 ) {
74
75 System.out.println( "输入值正确!" );
76 }
77 else{
78
79 System.out.println( "10次机会用完,本轮游戏结束!" );
80 }
81
82 System.out.println( "输入0结束游戏!,输入其它继续下一轮游戏!" );
83 if( Operate.getInput() == 0 ) {
84
85 return false;
86 }else {
87
88 return true;
89 }
90 }
94 }
1 /*
2 * 定义操作类Operate:用于产生随机数和取得用户输入
3 *
4 * */
5
6 package dao;
7
8 import java.util.Random; //导入包
9 import java.util.Scanner;
10
11
12 public class Operate {
13
14 //产生1-1000之间随机数
15 public static int getRandom() {
16
17 Random random = new Random();
18 int max = 1001;
19 int min = 1;
20
21 return random.nextInt(max) % (max - min + 1) + min;
22
23 }
24
25
26 public static int getInput() { //返回用户猜测输入的数据
27
28 Scanner scan = new Scanner(System.in);
29 int input = 0;
30
31 System.out.println("请输入:");
32 input = scan.nextInt();
33
34 return input;
35 }
38 }
1 package main;
2
3 import compare.Compare;
4
5 public class Main {
6
7 public static void main(String args[]) {
8
9 new Compare(); //实例化对象,进行游戏
10 }
11
12 }
Java实验项目二——猜数游戏的更多相关文章
- Java实验项目二——打印某年某月日历
Program:打印万年历(输入年份,月份,输出该月的日历,已知1900年1月1日是星期一), 要 求: (1)编写一个方法判断闰年: (2)编写一个方法判断某年某月有多少天: (3)编写一个方法计算 ...
- Java实验项目二——小学生考试系统(简单四则运算)
Program:设计实现一个小学生数学考试系统,完成随机出题(简单的四则运算),学生答题,自动判分的功能. Description:代码如下: 1 /* 2 * Description:面向考试系统建 ...
- Java实验项目二——二维数组实现九九乘法表
Program:打印乘法口诀表 (1)编写一个方法,参数(二维数组),完成将二维数组中的数据按照行列显示的工作. (2)编写一个测试方法,给出99乘法表,放入到二维数组中,调用(1)中的方法,显示乘法 ...
- JAVA课程设计 猜数游戏 团队
团队名称,成员介绍 名称: 猜数游戏 成员: 网络1514 201521123086 周颖强 网络1514 201521123087蒋勃超 项目git地址 git.oschina.net/jbc113 ...
- Java课程设计——猜数游戏(201521123111 陈伟泽)
Java课程设计--猜数游戏(201521123111 陈伟泽) 1.团队课程设计博客链接 博客作业--猜数游戏 2.个人负责模块或任务说明 Answer:一些基础界面的构造,排行榜的构造,用文件录入 ...
- java猜数游戏(新手记录每天的作业)
//导入包 import java.util.Scanner;import java.util.Random; //定义一个类 public class Zcs{ //公共静态的主方法 public ...
- 猜数游戏-flag的运用
package my;import java.util.Scanner;public class MyJava { public static void main(String[] ar ...
- 从scratch到python——猜数游戏
` 之前讲解了从scratch到python,基于python turtle库的实现,讲解了用scratch和python turtle绘图的实现,以及让小猫动起来和当角色被单击的例子. 本节课讲继续 ...
- 20145203盖泽双:Java实验报告二
Java实验报告二:Java面向对象程序设计 实验要求: 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验内容 ...
随机推荐
- JavaScript 实现简易版贪吃蛇(Day_13)
时光永远在变迁,你始终要丢下过去. 使用语言 JavaScript 概述 运用JavaScript 实现简易版<贪吃蛇>. Html 页面 1 <!DOCTYPE htm ...
- spring MyBatis的相关面试题
(相关面试题! 供参考!) 1.ORM框架有哪些? MyBatis:半自动化框架(不是纯ORM) 需要写动态SQL语句,实体类和SQL语句之间建立映射关系 Spring:轻量级框架, Java EE的 ...
- 第6讲 | 交换机与VLAN:办公室太复杂,我要回学校
第6讲 | 交换机与VLAN:办公室太复杂,我要回学校 拓扑结构是怎么形成的? 一个交换机肯定不够用,需要多台交换机,交换机之间连接起来,就形成一个稍微复杂的拓扑结构. 如何解决常见的环路问题? 包转 ...
- 『动善时』JMeter基础 — 29、JMeter响应断言详解
目录 1.JMeter断言介绍 2.响应断言组件界面详解 3.响应断言组件的使用 (1)测试计划内包含的元件 (2)登陆接口请求界面内容 (3)响应断言界面内容 (4)查看运行结果 (5)断言结果组件 ...
- JMicro微服务之超时&重试
JMicro是本人开发的基于Java实现的微服务框架,当前正式版本为0.0.3,并已发布到maven中央仓库.项目源码github:https://github.com/mynewworldyyl/j ...
- 201871030132-熊文婷 实验二 个人项目―《D{0-1}KP问题》项目报告
项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/2018CST 这个作业要求链接 https://www.cnblogs.com/nwnu-dai ...
- TVMNN编译Compiler栈
TVMNN编译Compiler栈 内容纲要 前言 调研目标 TVM介绍 TVM源码架构 FrontEnd Relay BackEnd VTA实现原理及设计思想提炼 整体结构 VTA Hardware ...
- TensorFlow实现超参数调整
TensorFlow实现超参数调整 正如你目前所看到的,神经网络的性能非常依赖超参数.因此,了解这些参数如何影响网络变得至关重要. 常见的超参数是学习率.正则化器.正则化系数.隐藏层的维数.初始权重值 ...
- 【Azure 机器人】微软Azure Bot 编辑器系列(1) : 创建一个天气对话机器人(The Bot Framework Composer tutorials)
欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人. 在该系列文章中,每一篇都将通过添加更多的功能来构建机器人.当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather ...
- 【NX二次开发】设置了“附加包含目录”,还是提示“无法打开包括文件”的解决方法
项目属性中的"附加包含目录"路径完全正确,但是还是无法找到头文件: 这个问题我遇到过不止一次,纠结了很久,终于发现了解决方法: 改为: 问题解决! 分析原因:项目中的属性配置 与 ...