Java实现自制猜数游戏(附源码)
这里是Java系列文章,主要介绍有Java的使用及Java相关的,如Java语言本身以及Java等级考试
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程
因此,为了更好的使用Java,加油学习吧!
关于作者:
· 小白(Libra),计算机兴趣爱好者,Java,python,C,Hadoop
· Email:717560136@qq.com
· GitHub:https://github.com/Regel-zack
转载请注明出处
前言
Java可以实现一些独特的小游戏,例如说飞机大战,五子棋等,或者就如本篇博客所讲的猜数游戏。
目录
前言
目录
正文
小结
结语
正文
源码内有注释,可以自行下载jdk编译运行
有问题可以在评论区提出
import java.util.*;public class Excel {public static void main(String[] args) {// 欢迎语System.out.println("Welcome to play!");// 开始制作随机数int [] a = new int[4];a = random_num();int num = 0;for (int j = 0;j<a.length;j++){num = num*10+a[j];}// 打印输出随机数System.out.println(num);// 用户输入自己的答案while (true){int sum = 0,side = 0,score = 0;Scanner admin_input = new Scanner(System.in);int admin_num = admin_input.nextInt();int [] admin_num_arrays = new int[4];admin_num_arrays[0] = (int) admin_num / 1000;admin_num_arrays[1] = (int) (admin_num - admin_num_arrays[0] * 1000) / 100;admin_num_arrays[2] = (int) ((admin_num - admin_num_arrays[0] * 1000) - admin_num_arrays[1] * 100) / 10;admin_num_arrays[3] = (int) ((admin_num - admin_num_arrays[0] * 1000) - admin_num_arrays[1] * 100) - admin_num_arrays[2] * 10;boolean admin_repeat = true;for (int i = 0;i < 4;i++){switch (i){case 0:break;case 1:if (admin_num_arrays[i] == admin_num_arrays[i-1]){admin_repeat = false;}break;case 2:if (admin_num_arrays[i] == admin_num_arrays[i-1]){admin_repeat = false;}if (admin_num_arrays[i] == admin_num_arrays[i-2]){admin_repeat = false;}break;case 3:if (admin_num_arrays[i] == admin_num_arrays[i-1]){admin_repeat = false;}if (admin_num_arrays[i] == admin_num_arrays[i-2]){admin_repeat = false;}if (admin_num_arrays[i] == admin_num_arrays[i-3]){admin_repeat = false;}break;}}if (admin_repeat == false){System.out.println("你输入的数字有重复的,不可以重复哦!");continue;}for (int i = 0;i < 4;i++){for (int j = 0;j <4;j++){score = Judge_num_0(admin_num_arrays[i],a[j]);if (i == j && score == 1){side++;sum++;continue;} else if (score == 1) {sum++;continue;}}}System.out.println("正确的数字位置个数是:" + side);System.out.println("正确的数字个数是:" + sum);if (side == 4){System.out.println(num);break;}}}public static int[] random_num(){int max = 9,min = 0;int [] num = new int[4];boolean repeat = false;for (int i = 0;i < num.length;i++){num[i] = (int) (Math.random() * (max-min)+min);switch (i){case 0 :break;case 1 :if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}break;case 2 :if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-2]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-2]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-2]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-2]){num[i] = (int) (Math.random() * (max-min)+min);}break;case 3 :if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-2]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-3]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-2]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-3]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-2]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-3]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-1]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-2]){num[i] = (int) (Math.random() * (max-min)+min);}if (num[i] == num[i-3]){num[i] = (int) (Math.random() * (max-min)+min);}break;}}return num;}public static int Judge_num_0(int num,int a){if (num == a) {return 1;} else return 0;}
}
这是编译结果
如果不显示正确答案就将相应的位置删除掉即可
小结
最后,我们简单的实现了一下猜数游戏
结语
我是Libra,一位永远追求公平的学习者。
Java实现自制猜数游戏(附源码)相关推荐
- java手机象棋软件下载,Java手机网络版象棋游戏附源码JAVA游戏源码下载
运行于手机上的中国象棋游戏,鉴于JAVA J2ME技术,本游戏分服务端和客户端,导入JAR包即可在手机上运行,内有开发文档和运用说明. Java手机网络版象棋游戏附源码 (1 folders, 2 f ...
- Java基础编写猜数游戏
Java基础编写猜数游戏 设计内容及要求 产生一个100以内的随机数,游戏者进行猜数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜对为止.游戏结束后计算出玩家所猜的次数. 目的及意义 通过猜数 ...
- html实现扫雷小游戏(附源码)
文章目录 实现功能 1.扫雷设计 1.1 主界面 1.2 扫雷难度 1.3 附带功能 2.效果和源码 2.1 动态效果 2.2 源代码 源码下载 作者:xcLeigh 文章地址:https://blo ...
- python跑酷游戏源码_Phaser.js实现简单的跑酷游戏附源码下载
采用的物理引擎是Phaser.js 在这里对此引擎不做过多介绍(因为我也是小白,嘿嘿) 效果展示: 源码(详细源码图片资源可点击文章下方或屏幕右上方的github链接进行clone) 1.创建游戏舞台 ...
- java计算机毕业设计婚恋网站(附源码、数据库)
java计算机毕业设计婚恋网站(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(Inte ...
- Java Swing图书管理系统桌面软件附源码
Java Swing图书管理系统桌面软件附源码,亲测可运行. 功能界面如下: 登录界面,默认账号admin密码admin 主功能界面: 添加图书功能界面: 部分源码: 完整源码下载地址: JavaSw ...
- 使用Java实现发送微信消息(附源码)_此程序在手再也不怕对象跟你闹了
使用Java实现发送微信消息(附源码)_此程序在手再也不怕对象跟你闹了 此程序在手再也不怕女朋友跟你闹了!!!!自从有了女朋友比如:早安.晚安之类的问候语可不能断,但是也难免有时候会忘记那么该咋么办呢 ...
- java计算机毕业设计后勤管理系统(附源码、数据库)
java计算机毕业设计后勤管理系统(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(In ...
- java计算机毕业设计网上拍卖系统(附源码、数据库)
java计算机毕业设计网上拍卖系统(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(In ...
最新文章
- windows 10 64位机器上 安装部署
- 2016年研究数据可视化最不应该错过的10篇文章
- python怎么导入时间-Python,模块导入方式和time模块的使用
- 怎样修改SSIS包中 Connection Manager 中的参数
- FATAL: NO bootable medium found! System halted
- php如何写回调函数,php – 如何使用类方法作为回调函数?
- Linux进程通信之管道
- [Leetcode][第201题][JAVA][数字范围按位与][位运算][Brian Kernighan]
- css按钮居中_你不一定知道的CSS最小和最大(宽度/高度)知识点及优缺点
- vs2008 jQuery 智能提示失败可能是Jquery版本问题
- 关情纸尾-----Quartz2D-简介
- 奇点云 x 阿里云 | 联合发布综合体数字化转型与数据创新解决方案
- Tomcat学习笔记(含servlet)
- easyui combobox 查询传递json对象
- 智慧执行 大数据的重塑之功
- 移动硬盘制作随身系统
- 使用WebGL去实现一个拖拽式UI代码生成App
- icode编程图形化|一级训练场|基础训练2
- Windows 环境下查看 Redis 版本号命令
- Android流畅启动动画,简单设置你的安卓 绝对流畅到爆
热门文章
- OC 教程 极光分享
- OC 基础 UITextView
- Android开发宇视监控播放,宇视科技视频监控(EZPlayer)
- Centos 7 彻底删除mysql步骤
- java 调用c效率高_java通过JNI调用C语言写的函数,能提高运行效率吗?
- MTK开发之—开机永不灭屏
- Excel如何快速将多个表格合并
- The Guru Myth
- windows10关闭安全中心服务器,微软:Windows 安全中心问题阻止 Win10 版本 2004 更新...
- 何金龙 mysql_[译文]MySQL发生死锁肿么办?by何金龙