目录

  • 系统描述
  • 代码解析
  • 源码

系统描述

1.如图所示,该系统分为三个选项:开始选号、现在开奖和退出。首先进入该系统输入1则开始选号,选号要求不能超过3位数,如果超过3位数则提示输入有误,请重新输入。如果输入数字符号要求则进入下一选项环节。
如下图所示输入格式正确指之后您可以重新选择1重新选号或者进入开奖环节。如果您中奖了系统会提升中奖,如果没有的话则会提示是否继续按y则进入选择界面按n则退出系统。如果之前没有选号直接选择第2个选项会提示没有选项信息接下来默认进入开始选号功能界面。

代码解析

  1. 好了多了不说,少了不唠,直接上本人写的代码。
    如下图所示,首先定义了一个NumManage类,定义了两个变量userNum和winNum分别代表用户输入的号码和后台默认的中奖号码。同时在构造参数编写了两变量的默认值。
  2. 如图构造了一个选号的方法,即第一个选项。为了避免客户输入的数字不符合要求出现重复输入的情况,在这里定义了一个while循环。如果用户输入的数字超过两位数则继续进行循环输入否则跳出该循环并打印提示信息。
  3. 如图接下来编写了主菜单方法,同样为了满足用户反复进行选择,便写了一个while循环。首先用num来接收用户输入的选项。如果用户选择了第项便进入了第一个分枝调用selectNum()方法。
    如果用户选择了第二个选项则进入了第2个分枝首先判断userNum的值是否发生了改变,如果用户经过第一个选项输入数字之后,必然userNum的默认值会发生改变,如果默认值还是-1说明用户直接跳过了选号功能来到了直接开奖系统,这里会提示没有输入号码并调用selectNum()方法默认进入选号界面。
    否则如果用户正好输入的数字为98则输出中奖信息并默认结束主菜单方法退出系统。
    如果用户输入的号码没有中奖,则提示没有中奖信息并询问用户是否继续选号如果用户没有输入y则退出系统。如果用户一开始就选择了3号选项则提示再见退出系统。如果输入的选项不是1,,2或3则提示输入选项不存在,继续循环进入选项界面。
  4. 运行结果展示




  5. 好了这就是本人的一些思路,欢迎进行交流!都看到这里了,留个赞再走呗!谢谢!**

源码

import java.util.Scanner;public class NumManage {public int userNum;//userNum-用户输入的号码public int winNum;//winNum-开奖号码。public NumManage() {//创建无参构造初始化userNum的值为-1.winNum的值为98。userNum = -1;winNum = 98;//中奖号码设置为98}//主菜单方法public void menu() {while(true) {System.out.println("欢迎进入六合彩开奖系统!");System.out.println("请选择您的操作:1.开始选号 2.现在开奖 3.退出系统");System.out.println("--------------------------------------");System.out.println("请输入您的选择:");Scanner scanner = new Scanner(System.in);int num = Integer.parseInt(scanner.next());  //用户输入的选项if(num == 1) {//如果输入1,调用选号方法selectNum();}else if(num == 2) {//如果输入选项2进行如下判断if(userNum == -1) {//如果用户输入的号码没有变过还是-1,说明该用户直接选择了第2项,//则进行错误提示,并默认进入第1个选项进行中奖号码的输入System.out.println("您还没有输入您的号码!");selectNum();}else if(userNum == winNum){//如果用户输入的号码等于98则提示中奖,并退出该系统。System.out.println("恭喜您中奖了!中奖号码为98!");return;//结束该主菜单方法意味着退出系统。}else {//如果用户输入的号码不等于98则提示没有中奖,并询问是否继续进行选号。System.out.println("抱歉,您没有中奖,请问您是否继续选号?y/n");Scanner scanner1 = new Scanner(System.in);String flag = scanner1.next();//flag 为用户输入是否是y还是nif(!flag.equals("y")) {//如果不为y说明不在继续则退出该系统。System.out.println("再见!");return;//结束该主菜单方法意味着退出系统。}}}else if(num == 3) {//如果选择为3,说明直接退出系统System.out.println("再见!");return;}else {//如果不是1或者2或者3 说明输入选项非法System.out.println("您输入的选项不存在!");}}}//选号方法public void selectNum() {while(true) {//开始循环!System.out.println("请输入您的选择,号码不能超过99!");Scanner scanner = new Scanner(System.in);userNum = Integer.parseInt(scanner.next());//如果用户输入号码,userNum的值会发生改变。if(userNum < 0 || userNum > 99) {//如果输入的号码有误,则继续循环输入System.out.println("您输入的号码有误,请重新输入!");}else {//否则说明输入号码符号要求,结束循环!break;}}System.out.println("输入完毕,请选择:");}}
public class NumManageTest {public static void main(String[] args) {NumManage numManage = new NumManage();numManage.menu();}}

Java实现彩票开奖系统相关推荐

  1. 彩票开奖系统PHP,彩票开奖API接口_免费数据接口 - 极速数据

    package api.jisuapi.caipiao; import api.util.HttpUtil; import net.sf.json.JSONArray; import net.sf.j ...

  2. 基于C语言的彩票开奖小程序(附源码)_☆*往事随風*☆的博客

    简易彩票开奖系统 一.基本要求: 要能够实现随机产生六位处于1-33之间的彩票号码,并且可以与用户输入的号码进行校对,最终判断用户的号码可以获得多少奖金. 二.基本原理: 利用随机数函数和数组来分别产 ...

  3. java编写一个彩票开奖的模拟程序.游戏共有两种玩法,一种是21选5,即玩家输入5个1到21内的不重复的数。另外一种玩法是6+1玩法,即要求玩家输入7个整数,代表所购买的彩票号码,最后一个是特码。

    java编写一个彩票开奖的模拟程序.游戏共有两种玩法,一种是21选5,即玩家输入5个1到21内的不重复的数.另外一种玩法是6+1玩法,即要求玩家输入7个整数,代表所购买的彩票号码,最后一个是特码. 具 ...

  4. 彩票开奖结果查询接口介绍

    彩票(lottery ticket)是指运用在博彩中以筹集资金为目的发行的,印有号码图形或文字,由购买人自愿按一定规则购买并确定是否获取奖励的凭证.了解了这个定义之后,彩票开奖结果查询就很好理解了. ...

  5. 前端 彩票开奖走势图的实现

    彩票开奖走势图的实现 页面结构 js 部分 效果图 做的是移动端的VUE + Vant.走势图每一条线都是一个canvas实现的 页面结构 部分参数我用"***"打个码,这里tbo ...

  6. java毕业设计彩票在线购买系统Mybatis+系统+数据库+调试部署

    java毕业设计彩票在线购买系统Mybatis+系统+数据库+调试部署 java毕业设计彩票在线购买系统Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java ...

  7. 彩票控接口全国彩票开奖数据接口API中心博易爱开彩网API接口集成代码调用对接教程

    在做一些游戏开发的时候,经常要用到一些彩票开奖的数据做为开奖结果,自己到网上去抓,经常没多久对方网站改版了,又得修改代码,例子是从一专门做数据采集的接口去调用,希望对您有用.接口返回各种格式有json ...

  8. Cocos2d-x 3.2 大富翁游戏项目开发-第二十四部分 彩票开奖

    每隔N个回合,彩票开奖一次,每期开奖奖金固定5万,暂不累积.摇奖效果一般,以后考虑用物理引擎实现 1.定义彩票开奖类 bool LotteryPublish::init() {addItemSprit ...

  9. 高频彩票开奖api高频彩票最新开奖查询XML格式

    高频彩票开奖api调用代码返回示例,查询高频彩种实时开奖结果. 接口名称:高频彩票开奖api 接口平台:API接口 接口地址:http://api.kxmt.net 支持格式:json/xml 请求方 ...

最新文章

  1. ROS话题通信中创建自定义数据类型的两种方式
  2. Vuex 的应用场景
  3. 防火墙工作原理—Vecloud微云
  4. (转)线段树的区间更新
  5. win2012每次启动显示服务器管理器,win2012r2服务器管理器打开角色.功能出错
  6. VTK:点定位器用法实战
  7. 对手机支付安全机制的思考
  8. Python案例:房源信息分析
  9. HDU-3974 Assign the task 线段树 或 直接模拟多叉树 或 并查集 (三种方法)
  10. 5G网络出来以后,家里面的宽带还有存在的必要吗?
  11. 深入理解加密、解密、数字签名和数字证书
  12. 使用Gson解析json
  13. ORAN专题系列-20:5G O-RAN 通过TR-069协议实现一体化小基站的自动配置和安装
  14. 简约、高质量简历模板
  15. BZOJ4556:[Tjoi2016Heoi2016]字符串 (后缀自动机+树上倍增+二分答案+线段树合并)
  16. android平板 双清,什么是小米平板2刷机前的双清
  17. 应用NMOS和晶体三极管作为基本开关管的相关知识
  18. yii mysql gii_Yii整合mongodb和mysql 使用mongodb gii
  19. springboot前后端分离,邮箱/手机验证号激活和登录,手机注册和激活
  20. “该设备正在使用中。请关闭可能使用该设备的所有程序或窗口 然后重试” 解决步骤

热门文章

  1. canvas画布使用总结
  2. 【Python】消费者行为分析项目——精准营销
  3. 思科开始了新一轮裁员,但拒绝透露影响规模
  4. 在VMware上安装 CentOS7 傻瓜式教程
  5. Metric评价指标-Perplexity语言模型
  6. 有道云笔记非会员MarkDown添加图片
  7. Mendix架构体系概述(二)
  8. java字符插入_java在原字符中插入新字符或字符串实例
  9. 搜狗浏览器,上网究竟能多快
  10. 简单三步教会你在前端监控平台:安装小程序、uni-app探针(详细教程)