鱼C论坛

 找回密码
 立即注册
查看: 5363|回复: 4

自己写的模仿福彩的小程序

[复制链接]
发表于 2021-4-26 09:45:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
该小程序是我在无聊的时候和朋友讨论的福彩的双色球,于是就百度了一下福彩的规则,写下了这个小程序,当天晚上就去福彩买了一注彩票,结果。。。。。。。。就中了一个数字 ,哈哈哈,但还是很开心的,哈哈哈!
package com.lian.Test;

import com.alibaba.fastjson.JSON;

import java.text.DecimalFormat;
import java.util.ArrayList;

/**
 * @author :LSS
 * @description:彩票中奖模拟小程序,一等奖到四等奖
 * @date :2021/4/23 16:31
 */
public class Lottery {
    //定义保留两位小数的模板
    private static DecimalFormat df = new DecimalFormat("######0.0000000000000000");
    //记录各个奖项中奖的次数,知道第一个一等奖出现为止,r5为测试总次数
    private static int r1= 0,r2=0,r3=0,r4=0,r5=1;
    public static void main(String[] args) {
        while (true) {
            System.out.println("当前第"+r5+"次执行!");
            if (r1 == 1)
                break;
            int i = 0,k =0;
            //声明红色求和蓝色球的存储对象,红色范围为1~3,蓝色为1~16
            ArrayList<Integer> red = new ArrayList<>();
            int bule = 0;
            //定义中奖号码,前6个为红色,第七个为蓝色
            ArrayList<Integer> prize = new ArrayList<>();
            int bule1 = 0;
            //选红色号码
            while (true) {
                if (red.size() == 6)
                    break;
                int reda = (int) Math.ceil(Math.random() * 33);
                if (!red.contains(reda)) {
                    red.add(reda);
                    i++;
                }
            }
            //选蓝色号码
            bule = (int) Math.ceil(Math.random() * 16);

            //随机生成中奖号码
            //生成红色号码
            while (true) {
                if (prize.size() == 6)
                    break;
                int prizea = (int) Math.ceil(Math.random() * 33);
                if (!prize.contains(prizea)) {
                    prize.add(prizea);
                    k++;
                }
            }
            //生成蓝色号码
            bule1 = (int) Math.ceil(Math.random() * 16);

            //记录命中个数
            int j = 0;
            for (int i1 = 0; i1 < 6; i1++) {
                if (prize.contains(red.get(i1)))
                    j++;
            }
            //对比,生成中奖率
            if (j == 6 && bule1 == bule) {
                r1++;
                System.out.println("恭喜您一等奖");
                System.out.println("您选的红色号码分别为" + JSON.toJSONString(red));
                System.out.println("您选的蓝色号码为" + bule);
                System.out.println("系统生成的红色号码为"+JSON.toJSONString(prize));
                System.out.println("系统生成的蓝色号码为" + bule1);
            } else if (j == 6) {
                r2++;
                System.out.println("恭喜您二等将");
                System.out.println("您选的红色号码分别为" + JSON.toJSONString(red));
                System.out.println("您选的蓝色号码为" + bule);
                System.out.println("系统生成的红色号码为"+JSON.toJSONString(prize));
                System.out.println("系统生成的蓝色号码为" + bule1);
            } else if (j == 5 && bule == bule1) {
                r3++;
                System.out.println("恭喜您三等奖");
                System.out.println("您选的红色号码分别为" + JSON.toJSONString(red));
                System.out.println("您选的蓝色号码为" + bule);
                System.out.println("系统生成的红色号码为"+JSON.toJSONString(prize));
                System.out.println("系统生成的蓝色号码为" + bule1);
            } else if ((j == 5 && bule != bule1) || (j == 4 && bule == bule1)) {
                r4++;
                System.out.println("恭喜您四等奖");
                System.out.println("您选的红色号码分别为" + JSON.toJSONString(red));
                System.out.println("您选的蓝色号码为" + bule);
                System.out.println("系统生成的红色号码为"+JSON.toJSONString(prize));
                System.out.println("系统生成的蓝色号码为" + bule1);
            }
            r5++;
        }
        System.out.println(r1+" "+r2+" "+r3+" "+r4);
        //测试中奖概率
        System.out.println("您的一等奖概率为:"+df.format(r1/(r5*1.0)));
        System.out.println("您的二等奖概率为:"+df.format(r2/(r5*1.0)));
        System.out.println("您的三等奖概率为:"+df.format(r3/(r5*1.0)));
        System.out.println("您的四等奖概率为:"+df.format(r4/(r5*1.0)));
    }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-4-28 09:22:16 | 显示全部楼层
两天零回复,看来大家对这个并不怎么感兴趣呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2021-8-12 08:46:19 | 显示全部楼层
连帅帅 发表于 2021-4-28 09:22
两天零回复,看来大家对这个并不怎么感兴趣呀

yes,凭直觉更好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-8-12 09:02:28 | 显示全部楼层

我用这个买了两次,每一次中的,哈哈哈,太绝了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-8-13 08:29:30 | 显示全部楼层
连帅帅 发表于 2021-8-12 09:02
我用这个买了两次,每一次中的,哈哈哈,太绝了

NBNBNB!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 18:49

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表