Java-双色球系统

news/2024/10/18 14:23:01/

一 .业务分析:

1.双色球中奖规则:

任意规定二等奖500万,一等奖1000万元。

投注号码由6个红色球号码(不可重复)和1个蓝色球号码,红色球1-33,蓝色球1-16

二.程序设计

1.定义三个方法,一个方法来生成中奖号码,第二个方法让用户输入号码,第三个方法来判断中奖情况。

main方法:

​​​
public static void main(String[] args) {int[] haoma = zhongjiang();            //方法1:随机生成中奖号码int[] shoudong = xuanhao();            //方法2:用户输入号码System.out.println("输入完成!");System.out.print("您的投注号码是");daying(shoudong);panduan(haoma,shoudong);                //方法3:判断中奖情况}
​​​

接下来,编写方法1:随机生成中奖号码:

public static int[] zhongjiang()                                         //中奖号码{int[] arr = new int[7];Random rs = new Random();for (int i = 0; i < arr.length; i++) {while (true)                                                     //不能出现重复{int date = rs.nextInt(33) + 1;                          //0-32+1boolean flag = true;                                                 //标记符for (int j = 0; j < i; j++) {if (arr[j] == date) {flag = false;break;}}if (flag) {arr[i] = date;break;}}}arr[arr.length - 1] = rs.nextInt(16) + 1;return arr;}

编写方法2:用户输入号码:

public static int[] xuanhao() {                                         //用户输入号码int[] nums = new int[7];Scanner sc = new Scanner(System.in);int rs = 0;System.out.println("红色球,在1-33之间输入");                        //红色球号码for (int i = 0; i < nums.length-1; i++) {System.out.println("第" + (i + 1) + "个号码");rs = sc.nextInt();int date = rs;if (rs >= 1 && rs <= 33) {while (true) {                                  //定义死循环,且判断是否重复boolean flag = true;for (int j = 0; j < i; j++) {if (nums[j] == rs) {flag = false;System.out.println("红色球,不能输入重复的数字!请重新输入:");rs = sc.nextInt();}}if (flag) {nums[i] = date;break;}}} else {System.out.println("红色球输入号码不合法!,请重新输入");rs = sc.nextInt();date = rs;if (rs >= 1 && rs <= 33) {while (true) {boolean flag = true;for (int j = 0; j < i; j++) {if (nums[j] == rs) {flag = false;System.out.println("红色球,不能输入重复的数字!请重新输入:");rs = sc.nextInt();}}if (flag) {nums[i] = date;break;}}}}}System.out.println("蓝色球,在1-16中输入");while(true) {int pp=sc.nextInt();if (pp<1||pp>16){System.out.println("蓝色球输入不合法,请重新输入!");pp= sc.nextInt();}else{nums[nums.length-1]=pp;break;}}return nums;}

最后,编写方法3,判断中奖情况:

public static void panduan(int arr1[],int arr2[])               //判断中奖情况{int shotred =0;int shotblue=0;for (int i = 0; i < arr2.length-1; i++) {for (int j = 0; j < arr1.length-1; j++) {if(arr2[i]==arr1[j]){shotred++;break;}}}if(arr2[arr1.length-1]==arr1[arr1.length-1]){shotblue++;}System.out.println("中奖号码是:");daying(zhongjiang());System.out.println("命中了"+shotred+"个红色球号码");System.out.println("命中了"+shotblue+"个蓝色球号码");if(shotblue==1&&shotred<=2){System.out.println("中奖5元!");}else if(shotblue==1&&shotred==3||shotblue==0&&shotred==4){System.out.println("中奖10元!");}else if (shotblue==1&&shotred==4||shotblue==0&&shotred==5){System.out.println("中奖200元!");}else if (shotblue==1&&shotred==5){System.out.println("中奖3000元!");}else if (shotblue==0&&shotred==6){System.out.println("中奖500万!");}else if (shotblue==1&&shotred==6){System.out.println("中奖1000万!");}else {System.out.println("很遗憾没有中奖,感谢您的参与");}}}

遍历数组打印的方法4,

public static void daying(int [] arr){for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+"\t");}System.out.println();}

三.运行程序:


http://www.ppmy.cn/news/533279.html

相关文章

matlab刚性球散射声场编程,基于小球反射法的超声脉冲波声场特性研究

超声换能器在超声检测、超声医疗和超声制造等系统中有着广泛的应用。由于各种超声技术都是利用换能器产生的振动能量与物质相互作用,从而产生各种物理、化学和生物等效应[1],所以各系统超声作用的效果和声场的性质密切相关,因此掌握换能器声场分布的信息对衡量换能器的性能至关…

PP-YoLoE | PP-YoLov2全面升级Anchor-Free,速度精度完美超越YoLoX和YoLov5

点击上方“计算机视觉工坊”&#xff0c;选择“星标” 干货第一时间送达 作者丨ChaucerG 来源丨集智书童 PP-YOLOE是基于PP-YOLOv2的卓越的单阶段Anchor-free模型&#xff0c;超越了多种流行的yolo模型。PP-YOLOE有一系列的模型&#xff0c;即s/m/l/x&#xff0c;可以通过width…

怀旧之偶尔做道题(4): 12球称重问题(1)

偶然翻出几个月前在纸上写的这个问题的初始解&#xff0c;当时知道不是最优解&#xff0c;但是也没有想出什么头绪就放下了。这次准备彻底地调查学习一下这个问题。 [2021-10-15] 订正一点&#xff0c;应该是. [2021-10-15]找到了很多相关博文。但是大多数都是给出了一个…

Just do it,一起来玩篮球吧

沉寂了近一年之后&#xff0c;三维可视化工具箱WxGL终于又有版本更新了&#xff1a;从0.6.4升级到0.7.0&#xff08;现在安装的话也可能是0.7.2&#xff09;&#xff0c;并且承诺自0.7.0版本开始向后兼容。在正式发布docs之前&#xff0c;我设计了几个乒乓球和篮球的小例子&…

PID控制算法 – 0、PID原理

1、开局一张图 很多地方都觉得PID的控制结构示意图是这样的&#xff1a; 2、目标值&#xff08;Setpoint&#xff09;、输入值&#xff08;Input&#xff09;、误差&#xff08;Error&#xff09; 其实把上图那个输入改为目标值&#xff08;Setpoint&#xff09;更合适&#…

windows进程结构体

了解进程线程的概念后&#xff0c;我们就来看看windows里面的进程长什么样子的。进程本质上就是一个结构体。在Linux里面也称之为进程描述符。当操作系统创建一个进程的时候&#xff0c;它会填充一个结构体&#xff0c;往这个结构体里写入数据&#xff0c;这个结构体就用于管理…

Queue,List,Deque联系

如图所示&#xff0c;可以得出LinkedList既可以是双向链表也可以是双端队列&#xff0c;Deque接口继承了Queue接口 Queue add(E):boolean 在队尾添加元素&#xff0c;添加成功返回true&#xff0c;如果队列已满无法添加则抛出异常。offer(E):boolean 在队尾添加元素&#xff0…

Web服务器群集:链路聚合与桥接

目录 一、理论 1.链路聚合 2.bond模式 3.team模式 4.bond和team区别 二、实验 1.实现bond网络接口 2.实现team网络接口 三、总结 一、理论 1.链路聚合 &#xff08;1&#xff09;概念 链路聚合&#xff08;Link Aggregation&#xff09;&#xff0c;它是一个计算机…