就在昨天我第一次买彩票,然后中了,早上起来就想着写一下双色球的java实现。假设没有人为操作,一切随机!
先介绍双色球规则
“双色球”每注投注号码由6个红色球号码和1个蓝色球号码组成。红色球号码从1–33中选择;蓝色球号码从1–16中选择。
昨天我买了两张,一张2+1,一张0+1 ,各中五元,嘻嘻
简单介绍一下我写的逻辑吧,一共四个函数。
main函数,
打印方法,
红球生成方法,
蓝球生成方法。
简单明了!!!
main函数调用print函数,print函数调用RedBall和BlueBall。
RedBall里边用到了一个HashSet,可以对重复进行一个排除,BlueBall就没有那么复杂,直接生成一个就行。
我在main函数里写了一个死循环,一般不建议这么写,但是对于狂热的彩迷朋友就更爽了。嘻嘻
附上源码
import java.util.HashSet;
import java.util.Random;
import java.util.Scanner;
/**
* @author YaJie
* @date 9:38
*/
public class Lucky {
public static void main(String[] args){
while (true) {
System.out.println("双色球机选!请输入您想打印的注数:");
Scanner scan = new Scanner(System.in);
int x = Integer.parseInt(scan.nextLine());
print(x);
}
}
public static void print(int x){
for (int i = 0; i < x; i++) {
HashSet<Integer> red = RedBall();
System.out.print(red);
System.out.print("--");
Integer blue = BlueBall();
System.out.print(blue);
System.out.println();
}
}
public static HashSet<Integer> RedBall(){
Random ran = new Random();
HashSet<Integer> hs = new HashSet<>();
do {
int tmp = ran.nextInt(33) + 1;
hs.add(tmp);
} while (hs.size() != 6);
return hs;
}
public static Integer BlueBall(){
return (int) (Math.random() * 16 + 1);
}
}
最后分享给大家 下一期五百万的票号
编程联系到现实,才会激发编程的乐趣,加油!
转载:https://blog.csdn.net/CSDN_yajie/article/details/106468906
查看评论