java做概率

package com.paic.pad.info.common.utils;

import java.util.HashMap;
import java.util.Map;
import java.util.Random;

public class GetRedPacket {
	public static Map<String, String> getRandomNum(double randomNum) {
		Map<String, String> map = new HashMap<String, String>();

		// 7. 产生一个随机数
		Random random = new Random(); // 随机数实例
		double base = random.nextDouble(); // 产生一个小于1 大于0的小数点数

		// 8. 产生的随机数小于中奖概率数,则提示抽奖失败
		if (base > randomNum) {
			String result = "点子:" + base + "|<没中奖>";
			map.put("code", "0");
			map.put("message", result);
		} else {
			String result = "点子:" + base + "《《中奖》》";
			map.put("code", "1");
			map.put("message", result);
		}
		return map;
	}

	public static void main(String[] args) {

		int sumGift = 8000;//总奖品
		int sumPerson = 4000;//总人数

		double randomNum = sumPerson * 1.0 / sumGift; //人数除奖品得到概率

		int count =0;

		for (int i = 0; i < 100; i++) {
			Map<String, String> map = getRandomNum(randomNum);
			String code = map.get("code");
			String message = map.get("message");
			if(code.equals("1")) {
				count ++;
			}
			System.out.println(message);
		}
		System.out.println("概率:"+randomNum +",共中奖了:" + count + "次");

	}
}

  

时间: 2024-10-14 15:03:15

java做概率的相关文章

我用JAVA做了个简易图像相似度计算器

简单说两句: 笔主利用这个七夕前后两天的寂寞时光,用JAVA磨了一个简单的图像相似度计算小程序,就在刚才终于纠结完毕,输出了1.0版本,小小的满足了一下可怜的虚荣心..→_→ 原理是使用最简单最基础的感知哈希算法,算法原理戳这里,绝对比笔主讲的要好: http://www.ruanyifeng.com/blog/2011/07/principle_of_similar_image_search.html UI设计图: 实际运行效果图: 关键算法: 1 // 全流程 2 public static

java做题笔记

java做题笔记 初始化过程是这样的: 1.首先,初始化父类中的静态成员变量和静态代码块,按照在程序中出现的顺序初始化: 2.然后,初始化子类中的静态成员变量和静态代码块,按照在程序中出现的顺序初始化: 3.其次,初始化父类的普通成员变量和代码块,在执行父类的构造方法: 4.最后,初始化子类的普通成员变量和代码块,在执行子类的构造方法: (1)初始化父类的普通成员变量和代码块,执行 C c = new C(); 输出C (2)super("B"); 表示调用父类的构造方法,不调用父类的

java做的二维码客户端

原文:java做的二维码客户端 源代码下载地址:http://www.zuidaima.com/share/1550463611882496.htm 暂时不支持中文,我以前没发现

java做的比较完善的FTP上传下载文件服务器源码

Filename: ftp.java Author: leetsing(elove) Create date: 2004-08-30 Use: connect to FTP server,then upload and download file Modify date: 2004-09-05 add to upload file 2004-09-13 add to download file Copy right: Magisky Media Technology Co.,Ltd. *****

教你用java做个微信红包,自己做运气王!

java微信红包 微信是如今人们日常生活离不开的app,日常交流,小额转账,视频通话等都很方便.微信红包也是人们使用得最多的功能,朋友一起出去吃个饭,饭后AA用微信红包:逢年过节,给亲朋好友发个红包--这篇文章教你用java做个红包小项目!注意事项因为金额涉及到分,小数点后保留两位,数值类型的转换操作需要注意:此中方案相对简陋,并未实现每次红包最大值在0.01-剩余红包均值的2倍间:/* 红包设计要求: 1-红包最小值为0.01,最大值为200 2-红包的金额面值为小数点后两位 3-避免单个红包

java根据概率随机中奖 测试类

最近要做一个宝箱抽奖的功能 自己先联系了一下,分别用 list和set 进行存储和抽取,做了一个时间消耗的对比,感觉list应该比set读取的要快些,但是这也不一定,希望大家能够共同讨论. 废话少说上代码: package com.test.testRandom; import java.util.ArrayList; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.u

java做http接口

问题描述 我要对外提供一个http接口给别人调用...但是我不知道用java怎么做这个接口.请大家详细给我讲讲.从开发到如何发布到服务器.谢谢了 解决方案 如果你这个很简单的话,而且数量也很少,建议直接一个servlet解决了事.使用开源的webservice组件非常麻烦.无非如下几种方式,你可以参考下:1 servlet实现,这种方式的话需要你解析内容,如果你输入输出比较简单的话,完全使用这种方式,这种方式集成很简单,而且变动性也很强.完全客户端服务端分离.如果接口比较简单推荐这种方式2 使用

用java做操作系统内核:软盘读写

在前两节,我们将一段代码通过软盘加载到了系统内存中,并指示cpu执行加入到内存的代码,事实上,操作系统内核加载也是这么做的.只不过我们加载的代码,最大只能512 byte, 一个操作系统内核,少说也要几百兆,由此,系统内核不可能直接从软盘读入系统内存. 通常的做法是,被加载进内存的512 Byte程序,实际上是一个内核加载器,它运行起来后,通过读取磁盘,将存储在磁盘上的内核代码加载到指定的内存空间,然后再把cpu的控制权提交给加载进来的系统内核. 这就需要我们理解软盘的物理结构,以及软盘的数据读

Java做界面思路整理

说起大一就学过C++,但从未接触过VC++,至于做界面也是直到学java才开始,所以自己还是个新手啊... 步入正题,通过自己写的两个小程序,对做界面的思路进行一下整理. 首先,构想出自己想要实现的界面是什么样子.可以在纸上画出个轮廓(我是这么干的...),尽量详尽,比如点击按钮后的实现一个页面的跳转,跳转之后的页面也画出来.为什么要这样呢?都知道界面是由控件和容器组成的,画的目的就是清楚要用哪些组件,并且根据自己的界面,然后组织容器,再进而组织布局.对于布局可能会比较麻烦一点,这要根据你的窗口