鱼C论坛

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

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

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

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

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

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

  1. package com.lian.Test;

  2. import com.alibaba.fastjson.JSON;

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

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

  39.             //随机生成中奖号码
  40.             //生成红色号码
  41.             while (true) {
  42.                 if (prize.size() == 6)
  43.                     break;
  44.                 int prizea = (int) Math.ceil(Math.random() * 33);
  45.                 if (!prize.contains(prizea)) {
  46.                     prize.add(prizea);
  47.                     k++;
  48.                 }
  49.             }
  50.             //生成蓝色号码
  51.             bule1 = (int) Math.ceil(Math.random() * 16);

  52.             //记录命中个数
  53.             int j = 0;
  54.             for (int i1 = 0; i1 < 6; i1++) {
  55.                 if (prize.contains(red.get(i1)))
  56.                     j++;
  57.             }
  58.             //对比,生成中奖率
  59.             if (j == 6 && bule1 == bule) {
  60.                 r1++;
  61.                 System.out.println("恭喜您一等奖");
  62.                 System.out.println("您选的红色号码分别为" + JSON.toJSONString(red));
  63.                 System.out.println("您选的蓝色号码为" + bule);
  64.                 System.out.println("系统生成的红色号码为"+JSON.toJSONString(prize));
  65.                 System.out.println("系统生成的蓝色号码为" + bule1);
  66.             } else if (j == 6) {
  67.                 r2++;
  68.                 System.out.println("恭喜您二等将");
  69.                 System.out.println("您选的红色号码分别为" + JSON.toJSONString(red));
  70.                 System.out.println("您选的蓝色号码为" + bule);
  71.                 System.out.println("系统生成的红色号码为"+JSON.toJSONString(prize));
  72.                 System.out.println("系统生成的蓝色号码为" + bule1);
  73.             } else if (j == 5 && bule == bule1) {
  74.                 r3++;
  75.                 System.out.println("恭喜您三等奖");
  76.                 System.out.println("您选的红色号码分别为" + JSON.toJSONString(red));
  77.                 System.out.println("您选的蓝色号码为" + bule);
  78.                 System.out.println("系统生成的红色号码为"+JSON.toJSONString(prize));
  79.                 System.out.println("系统生成的蓝色号码为" + bule1);
  80.             } else if ((j == 5 && bule != bule1) || (j == 4 && bule == bule1)) {
  81.                 r4++;
  82.                 System.out.println("恭喜您四等奖");
  83.                 System.out.println("您选的红色号码分别为" + JSON.toJSONString(red));
  84.                 System.out.println("您选的蓝色号码为" + bule);
  85.                 System.out.println("系统生成的红色号码为"+JSON.toJSONString(prize));
  86.                 System.out.println("系统生成的蓝色号码为" + bule1);
  87.             }
  88.             r5++;
  89.         }
  90.         System.out.println(r1+" "+r2+" "+r3+" "+r4);
  91.         //测试中奖概率
  92.         System.out.println("您的一等奖概率为:"+df.format(r1/(r5*1.0)));
  93.         System.out.println("您的二等奖概率为:"+df.format(r2/(r5*1.0)));
  94.         System.out.println("您的三等奖概率为:"+df.format(r3/(r5*1.0)));
  95.         System.out.println("您的四等奖概率为:"+df.format(r4/(r5*1.0)));
  96.     }
  97. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> 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-5-1 23:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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