双色球系统

一、题目描述

双色球系统:

1、系统随机生成7位中奖号码,前6位范围是1--33,最后一位范围是1--16,要求随机生成的前6位中奖号码不能重复。

2、用户输入中奖号码

3、判断中奖与否,并打印中奖奖金

二、代码实现

三、运行结果

四、具体思路

1)随机生成7位中奖号码:

先生成前6位,并将其存入数组中,因要确保生成的数字是否重复,须定义一个方法contains用于判断生成的数字是否在数组中存在,若存在,不能将其存入数组arr[]中 ,须重新生成数字。第7位数字直接存入数组即可

2)将用户输入的彩票号码存入数组:

1.定义一个数组长度为7的数组用于存储键盘录入的彩票号码 

2.循环输入前6位,须判断数字范围是否为1--33,在这个判断if-else语句里面加一个判断if-else语句,用于判断输入的数字在数字中是否存在,若存在,不能将其存入数组inputArr[]中,重新输入。

3.输入第7位数字需用到while循环,判断条件永为真,当输入的数据在1--16这个范围之中时,将数字存入数组inputArr[]中后执行break;语句,跳出该while循环

3)判断是否中奖:

1.将数组arr[]和数组inputArr[]中的数据进行比较,即将中奖号码与用户的彩票号码进行比较,判断红篮球个数。前6位用户输入的彩票号码与中奖号码有n个相同即代表有n个红球,用户输入的彩票号码最后1位与中奖号码最后1位相同,则蓝球有1个,反之蓝球有0个

2.使用if-else语句判断中奖等级

五、注意事项

1.定义方法contains判断随机生成的数字在数组中是否存在中,参数为一个数组,和一个数字.

返回值类型为boolean,在方法createNumber()和userInput()调用时用flag接收

2.在方法userInput()中第77行代码:System.out.println("请输入第" + (i + 1) + "个彩票号码");注意提示语句为i+1,因为i开始为0

3.在统计红球个数时,需要将两个数组中的数据逐个比较,此时用redNumber来接收(代码34行),不能arr[i] == inputArr[j]这样比较,因为这样只是比较了数组中相同位置的数据是否相同。

同时注意代码39行的break

4.统计蓝球个数时直接arr[arr.length - 1] == inputArr[inputArr.length - 1]就好,因为蓝球只由两个数组最后一位决定

5.主方法中注意判断等级时要细心

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值