Java实现双色球中奖兑奖系统

  • (一)、双色球中奖规则:
  • (二)、分布操作:
    • 第一步:(去重)
    • 第二步:(获奖数)
    • 第三步:(用户信息)
    • 第四步: 中的红球和蓝球个数
    • 第五步:计算中奖金额:
    • 第六步:导入主函数:
  • (三)、整体代码展示:
    • 效果展示:

(一)、双色球中奖规则:

双色球的中奖规则如下:
1、双色球总共有7个号码,6红1蓝,只要全部买中就会中一等奖(1000万)。
2、只要任意买中6个红球,就会中二等奖(500万)。
3、只要6个球中任意中5个红球+1个蓝球,就会中三等奖(3000元)。
4、只要6个球中任意选中5个红球,或者任意选中4个红球+1个蓝球,就会中四等奖(200元)。
5、只要6个球中任意选中4个红球,或者任意中3个红球+1个蓝球,就会中五等奖(10元)。
6、只要6个球中任意选中2个红球+1个蓝球,或者1个红球+1个蓝球,或者1个蓝球,都可以中六等奖(5元)。
总的来说,双色球中有7个号码,6红1蓝,只要6+1、6+0、5+1、5+0或4+1、4+0或3+1、2+1或1+1或0+1都是可以中奖的,只是中奖的金额不同。

(二)、分布操作:

第一步:(去重)

进行中奖设置,首先我们要用系统随机生成一个7位数的中奖号码,且中奖号码红色的球(前六位不能重复1 ~ 36),蓝色的球可以重复(1~16).
调用随机函数(Random):

import java.util.Random;     //导包Random r=new Random();      //声明int idex=r.nextInt();       //引用

设置第一个方法: judgeRead(){}目的是为了去掉奖项中的重复数字

 public static boolean judgeRead(int number[],int readidex)      //判断是否有重复{for(int i=0;i<number.length-1;i++){
//number[]中奖数值,右边是随机值,假如说随机值和中奖值重复返回true否则falseif(number[i]==readidex)   {return true;}}return false;     }

第二步:(获奖数)

设置第二个方法: Creatnumber(){}目的是为了创建中奖号码

  public static int[] creatNumber()    //创建中奖号码{int number[]=new int[7];   //设置空数组Random r=new Random();   //引用随机for(int i=0;i<number.length-1;)   //判断红球,并去重{int readIdex=r.nextInt(36)+1;   //设定随机范围1~36boolean flag=judgeRead(number,readIdex); //判断是否与数字重复if(!flag)   //假如说不相同进入体内{number[i]=readIdex;    //把不相同的数值给数组System.out.print(number[i]+" "); //输出i++;     //然后进行++操作}}int blueNumber=r.nextInt(16)+1;    //设定篮球范围 1~16number[number.length-1]=blueNumber;   //赋值给最后一个数System.out.print( number[number.length-1]+" ");  //输出return number;  //返回数组}

第三步:(用户信息)

设置第三个方法:usernumber(){}目的是为得到用户的信息

 public static int[] userInputNumber()         //  用户输入自己的号码{int user_number[]=new int[7];    //设置7个空间Scanner sc=new Scanner(System.in);Random r=new Random();System.out.println("请您输入您的红色号码:");for(int i=0;i<user_number.length-1;){System.out.print("请输入"+(i+1)+"个球:");int readnumber=sc.nextInt();if(readnumber>=1&&readnumber<=36)   //红球范围{boolean flag=judgeRead(user_number,readnumber);  //去重if(!flag)  //假如说不同{user_number[i]=readnumber;   //红球给数组i++;}else   //否则重新输入{System.out.println("当前号码以重复,请重新输入:");}}else   //否则重新输入{System.out.println("当前号码超出范围,请重新输入:");}}while(true)  //蓝色球 范围{System.out.print("请输入蓝球号码:");int bluenumber=sc.nextInt();if(bluenumber>1&&bluenumber<16){user_number[user_number.length-1]=bluenumber;  //在范围内赋值break;   //直接退出}else  //如果超出范围重新输入{System.out.println("您输入的数字超出范围,请重新输入:");}}return user_number;    //返回用户的信息}

第四步: 中的红球和蓝球个数

设置第四个方法:目的是为了得到红球蓝球的个数

public static void judgeball()         //判断中奖的球数{System.out.println("随机生成的中奖号码是:");int arr[]=creatNumber();   //复制System.out.println("");System.out.println("\n\n进入用户数页面:\n");int userarr[]=userInputNumber();   //复制for(int i=0;i<userarr.length-1;i++){for(int j=0;j<arr.length-1;j++){if(userarr[i]==arr[j])  //假如说红球相同 +1{count++;break;}}}if(arr[6]==userarr[6])  假如说蓝球相同  +1{count1++;}System.out.println("红球中:"+count+"个,蓝球中:"+count1+"个");//打印输出}

第五步:计算中奖金额:

调用第五个方法: judgeWard(){}目的是为了中奖金钱

public static void judgeWard()   //判断能得到多少钱?{switch(count){case 0: case 1: if(count1==1) {System.out.println("获得5元奖励");} else {System.out.println("很抱歉,没中奖!");}break;case 2:if(count1==1) {System.out.println("获得10元奖励");} else {System.out.println("很抱歉,没中奖!");}break;case 3:if(count1==1) {System.out.println("获得10元奖励");} else {System.out.println("很抱歉,没中奖!");}break;case 4:if(count1==0) {System.out.println("获得10元奖励");} else{System.out.println("获得200元奖励");}break;case 5:if(count1==0) {System.out.println("获得200元奖励");} else{System.out.println("获得3000元奖励");}break;case 6:if(count1==0) {System.out.println("获得500万元奖励");} else{System.out.println("获得1000万元奖励");}break;}      }

第六步:导入主函数:

调用第六个方法:主函数

 public static void main(String []avgs){ judgeball();judgeWard();
}

(三)、整体代码展示:

package test;  //  包名
import java.util.Random;
import java.util.Scanner;public class test1 {     //项目名static int count=0,count1=0;public static int[] creatNumber()    //创建中奖号码{int number[]=new int[7];   //创建中奖数组Random r=new Random();for(int i=0;i<number.length-1;){int readIdex=r.nextInt(36)+1;boolean flag=judgeRead(number,readIdex);if(!flag){number[i]=readIdex;System.out.print(number[i]+" ");i++;}}int blueNumber=r.nextInt(16)+1;number[number.length-1]=blueNumber;System.out.print( number[number.length-1]+" ");return number;}public static boolean judgeRead(int number[],int readidex)      //判断是否有重复{for(int i=0;i<number.length-1;i++){if(number[i]==readidex){return true;}}return false;    }public static int[] userInputNumber()         //  用户输入自己的号码{int user_number[]=new int[7];Scanner sc=new Scanner(System.in);Random r=new Random();System.out.println("请您输入您的红色号码:");for(int i=0;i<user_number.length-1;){System.out.print("请输入"+(i+1)+"个球:");int readnumber=sc.nextInt();if(readnumber>=1&&readnumber<=36){boolean flag=judgeRead(user_number,readnumber);if(!flag){user_number[i]=readnumber;i++;}else{System.out.println("当前号码以重复,请重新输入:");}}else{System.out.println("当前号码超出范围,请重新输入:");}}while(true){System.out.print("请输入蓝球号码:");int bluenumber=sc.nextInt();if(bluenumber>1&&bluenumber<16){user_number[user_number.length-1]=bluenumber;break;}else{System.out.println("您输入的数字超出范围,请重新输入:");}}return user_number;}public static void judgeball()         //判断中奖的球数{System.out.println("随机生成的中奖号码是:");int arr[]=creatNumber();System.out.println("");System.out.println("\n\n进入用户数页面:\n");int userarr[]=userInputNumber();for(int i=0;i<userarr.length-1;i++){for(int j=0;j<arr.length-1;j++){if(userarr[i]==arr[j]){count++;break;}}}if(arr[6]==userarr[6]){count1++;}System.out.println("红球中:"+count+"个,蓝球中:"+count1+"个");}public static void judgeWard()   //判断能得到多少钱?{switch(count){case 0: case 1: if(count1==1) {System.out.println("获得5元奖励");} else {System.out.println("很抱歉,没中奖!");}break;case 2:if(count1==1) {System.out.println("获得10元奖励");} else {System.out.println("很抱歉,没中奖!");}break;case 3:if(count1==1) {System.out.println("获得10元奖励");} else {System.out.println("很抱歉,没中奖!");}break;case 4:if(count1==0) {System.out.println("获得10元奖励");} else{System.out.println("获得200元奖励");}break;case 5:if(count1==0) {System.out.println("获得200元奖励");} else{System.out.println("获得3000元奖励");}break;case 6:if(count1==0) {System.out.println("获得500万元奖励");} else{System.out.println("获得1000万元奖励");}break;}}public static void main(String []avgs){ judgeball();judgeWard();
}}

效果展示:

双色球

45.【Java 实现双色球中奖查询系统】相关推荐

  1. JAVA毕业设计公交线路查询系统计算机源码+lw文档+系统+调试部署+数据库

    JAVA毕业设计公交线路查询系统计算机源码+lw文档+系统+调试部署+数据库 JAVA毕业设计公交线路查询系统计算机源码+lw文档+系统+调试部署+数据库 本源码技术栈: 项目架构:B/S架构 开发语 ...

  2. 计算机毕业设计ssm基于Java的城市公交查询系统ac5p2系统+程序+源码+lw+远程部署

    计算机毕业设计ssm基于Java的城市公交查询系统ac5p2系统+程序+源码+lw+远程部署 计算机毕业设计ssm基于Java的城市公交查询系统ac5p2系统+程序+源码+lw+远程部署 本源码技术栈 ...

  3. java毕业设计城市公交查询系统Mybatis+系统+数据库+调试部署

    java毕业设计城市公交查询系统Mybatis+系统+数据库+调试部署 java毕业设计城市公交查询系统Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java ...

  4. java毕业设计现有传染病查询系统mybatis+源码+调试部署+系统+数据库+lw

    java毕业设计现有传染病查询系统mybatis+源码+调试部署+系统+数据库+lw java毕业设计现有传染病查询系统mybatis+源码+调试部署+系统+数据库+lw 本源码技术栈: 项目架构:B ...

  5. 基于JAVA的城市公交查询系统毕业论文(含源文件)

    获取项目源文件,学习交流联系Q:1225467431 摘要:公交查询系统是城市道路交通的重要组成部分,是城市发展的必然产物,是联系国民生活.社会生产和流通领域的关键环节.安阳城市公交查询系统的发展处于 ...

  6. 基于JAVA的城市公交查询系统毕业论文

    欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye2 摘要:公交查询系统是城市道路交通的重要组成部分,是城市发展的必然产物,是联系国民生活.社会生产 ...

  7. java城市公交查询系统案例_基于JAVA的城市公共交通查询系统的设计与实现

    科技与信息 2018.12 计算机产品与流通 159 基于 JAVA 的城市公共交通查询系统的设计与实现 □ 苏楠 摘要:公共交通查询系统是城市交通的组成部分之一,也是一个城市实现现代化发展的必然产物 ...

  8. Java实现简单航班查询系统

    #java实现简单航班管理系统 题目要求:声明一个Flight(航班)类,该类包含private域航班号(如:CA1430),起飞时间(如:10:15AM),到达时间(如:2:30PM).为该类声明合 ...

  9. JAVA JSP城市公交查询系统 jsp公交线路查询系统Java公交查询系统Java公交线路查询

    JSP城市公交查询系统 jsp公交线路查询系统Java公交查询系统Java公交线路查询

  10. java 城市公交查询系统源码_基于Java的城市公交查询系统的毕业设计参考源码

    资料介绍 一.实现多种查询功能,包括根据商厦名称.公交车号.日常站点.和任意两个站点查询乘车路线.其次,采用最短路径算法查找任意两个站点之间的最短乘车路线.最后,提供了用户留言的功能.用户管理功能和后 ...

最新文章

  1. 最高补助1000万元!这类程序员2020年要过好日子了……
  2. 用c语言合并两个链表,合并两个链表.
  3. 通过AAA服务器使用XML文件为远程接入SSL ***认证授权
  4. jmeter 多机负载压测与服务器性能监测
  5. html head
  6. Pixhawk代码分析-准备
  7. 惊!空 struct 地址竟然不相等
  8. 【ArcGIS遇上Python】Python批量将多个文件夹下的多个影像数据镶嵌至新栅格
  9. c#自动更新+安装程序的制作
  10. 【转】PMO、EPG与QAG职责分工——任甲林
  11. 远程桌面未知的用户名_远程桌面连接 提示用户名密码错误的解决办法
  12. ASC2BCD及奇偶校验位
  13. 读KVM虚拟化技术实战与原理解析
  14. android4.4 计算器,卡西欧仿真计算器
  15. 利用mongodb实现分布式WEB图片存储
  16. 中投、汇金、四大国有资产管理公司、华融、长城、东方、信达
  17. 【stm32f4 C++与C混合开发】建立keil5的ARM Compiler 6(AC6)标准库开发工程
  18. The Hidden Agenda User Simulation Model翻译
  19. 一文学会CentOS 文件常用命令
  20. IEEE ICIP 2019 | 更快更好的联邦学习:一种特征融合方法

热门文章

  1. 举个栗子!Tableau技巧(7):如何做帕累托图
  2. 通用计算机指令,计算机移位指令
  3. 把期货当现货做,专业投机大局观
  4. Python-基于request豆瓣电影票房信息爬取,简单粗暴
  5. apache - mod_rewrite配置指令RewriteBase
  6. [Mysql] LEFT函数 | RIGHT函数
  7. 计算机图像处理顶级教授,【科研新成果】我院两项成果被图像处理领域顶级期刊录用...
  8. 高登学苑-解密携程4.9分的秘诀学习笔记
  9. Jack Platts:Polkadot 在 Staking 上的设计
  10. spark.reducer.maxReqsInFlight和spark.reducer.maxBlocksInFlightPerAddress