做一个翻宝程序,通过返回数字0-5来判断中奖情况,

012345,这几个数字的出现的概率是0出现最高,1出现比0少,2出现比1少,依次下去

/**

* JAVA 返回随机数,并根据概率、比率

* @author zhanglei

*

*/

public class MathRandom

{

/**

* 0出现的概率为%50

*/

public static double rate0 = 0.50;

/**

* 1出现的概率为%20

*/

public static double rate1 = 0.20;

/**

* 2出现的概率为%15

*/

public static double rate2 = 0.15;

/**

* 3出现的概率为%10

*/

public static double rate3 = 0.10;

/**

* 4出现的概率为%4

*/

public static double rate4 = 0.04;

/**

* 5出现的概率为%1

*/

public static double rate5 = 0.01;

/**

* Math.random()产生一个double型的随机数,判断一下

* 例如0出现的概率为%50,则介于0到0.50中间的返回0

* @return int

*

*/

private int PercentageRandom()

{

double randomNumber;

randomNumber = Math.random();

if (randomNumber >= 0 && randomNumber <= rate0)

{

return 0;

}

else if (randomNumber >= rate0 / 100 && randomNumber <= rate0 + rate1)

{

return 1;

}

else if (randomNumber >= rate0 + rate1

&& randomNumber <= rate0 + rate1 + rate2)

{

return 2;

}

else if (randomNumber >= rate0 + rate1 + rate2

&& randomNumber <= rate0 + rate1 + rate2 + rate3)

{

return 3;

}

else if (randomNumber >= rate0 + rate1 + rate2 + rate3

&& randomNumber <= rate0 + rate1 + rate2 + rate3 + rate4)

{

return 4;

}

else if (randomNumber >= rate0 + rate1 + rate2 + rate3 + rate4

&& randomNumber <= rate0 + rate1 + rate2 + rate3 + rate4

+ rate5)

{

return 5;

}

return -1;

}

/**

* 测试主程序

* @param agrs

*/

public static void main(String[] agrs)

{

int i = 0;

MathRandom a = new MathRandom();

for (i = 0; i <= 100; i++)//打印100个测试概率的准确性

{

System.out.println(a.PercentageRandom());

}

}

}

java 概率生成随机数_JAVA 生成随机数,并根据概率、比率相关推荐

  1. java服务器生成随机数_java生成随机数

    java生成随机数 java有三种常用的方式生成随机数: 一.使用Random类 二.使用Math.random方法 三.使用System.currentTimeMillis方法 Random类是最常 ...

  2. java 获取区间随机数_Java获取随机数的3种方法

    主要介绍了Java获取随机数的3种方法,主要利用random()函数来实现 方法1 (数据类型)(最小值+Math.random()*(最大值-最小值+1))例: (int)(1+Math.rando ...

  3. java中的随机数_Java获取随机数

    随机数在实际中使用很广泛,比如要随即生成一个固定长度的字符串.数字.或者随即生成一个不定长度的数字.或者进行一个模拟的随机选择等等.Java提供了最基本的工具,可以帮助开发者来实现这一切. 一.Jav ...

  4. java 获取区间随机数_Java获取随机数的几种方法

    随机数在实际中使用很广泛,比如要随即生成一个固定长度的字符串.数字.或者随即生成一个不定长度的数字.或者进行一个模拟的随机选择等等.Java提供了最基本的工具,可以帮助开发者来实现这一切. 一.Jav ...

  5. java 按比例生成随机数_JAVA 生成随机数,并根据概率、比率

    做一个翻宝程序,通过返回数字0-5来判断中奖情况, 012345,这几个数字的出现的概率是0出现最高,1出现比0少,2出现比1少,依次下去 /** * JAVA 返回随机数,并根据概率.比率 * @a ...

  6. java 生成随机数_Java 生成随机数的 N 种方法

    原标题:Java 生成随机数的 N 种方法 www.baeldung.com/java-generating-random-numbers 1.引言 本文将探讨用 Java 生成随机数的不同方法. 2 ...

  7. java数组随机排序_JAVA 生成随机数数组,并排序输出

    package com.koal.test; import java.util.Arrays; /** * * @author hp * 排序 */ public class Sort { //要生成 ...

  8. java 日期随机数_Java 生成指定时间范围的随机时间、随机中文姓名、随机字符姓名、随机数...

    解决问题: Java生成指定时间范围的随机时间? Java生成随机中文姓名? Java生成随机字符姓名? Java生成随机数? 代码: import java.io.UnsupportedEncodi ...

  9. java生成永远不重复的随机数_java生成不重复随机数的方法

    java生成不重复随机数的方法 发布时间:2020-07-01 11:00:00 来源:亿速云 阅读:225 作者:Leah java怎么实现生成不重复随机数 ?针对这个问题,这篇文章详细介绍了相对应 ...

  10. java 产生随机数_java生成随机数

    packagecom.rd.p2p.common.util;importjava.util.Iterator;importjava.util.LinkedHashSet;importjava.util ...

最新文章

  1. CSV合规的矫枉过正
  2. gcc 复杂结构体 初始化_gcc编译选项
  3. 清除messages
  4. python是c语言写的吗-C语言是学python的基础吗?
  5. OkHttp简化请求封装思路
  6. 密码学数字信封的介绍
  7. Oracle11g新特性:在线操作功能增强-Oracle11g在线重建索引功能增强 (转载)
  8. C语言小知识---为什么要使用指针
  9. Linux学习笔记---使用BusyBox创建根文件系统(一)
  10. 模型加速:WAE-Learning a Wavelet-like Auto-Encoder to Accelerate Deep Neural Networks
  11. java浏览器安全设置,主编练习win7系统运行java提示“您的安全设置已阻止不可信应用程序运行”的对策...
  12. 关于nginx file not found
  13. 使用IDA静态分析解密《舰娘Collection》的lua脚本
  14. 怎么在Excel中快速将英文翻译为中文
  15. 用Unison实现数据的双向实时同步
  16. 软件架构设计---产品线及系统演化
  17. 形态学运用(去除图像噪点,提取水平线,垂直线)--OPenCV08
  18. java空指针异常是什么、怎么发生、如何处理
  19. 论语 宪问篇(笔记)
  20. 云游戏时代:游戏主机们未来的对手,也许不再是彼此了

热门文章

  1. ftp扫描工具,6款最好用的ftp扫描工具
  2. 如何在Windows下安装ReviewBoard
  3. nagios 飞信通知
  4. 通过webService下载sharepoint文档库文件
  5. BroadcastReceiver启动Service 3.1之后静态注册
  6. html实现个人空间主页(附源码)
  7. HTML代码 网页设置 QQ空间等分享
  8. 富士通750打印机驱动步骤_非网络激光打印机如何进行网络打印?
  9. Mac OS系统下kernel_task占用大量CPU资源导致系统卡顿
  10. 黑莓7290中文系统下载_无法将Blackberry 7290升级到最新的系统软件