java随机数生成0和1的简单介绍

博主:adminadmin 2023-03-19 10:18:10 1177

本篇文章给大家谈谈java随机数生成0和1,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

用JAVA产生[0,1]均匀分布的随机数 要算法

double rand(double []r)

{

double base,u,p,v,temp1,temp2,temp3;

base=256.0;

u=17.0;

v=139.0;

temp1=u*(r[0])+v; //就算总数

temp2=(int)(temp1/base);//计算商

temp3=temp1-temp2*base;//余数

r[0]=temp3;//更新随机种子,为下一次使用

p=r[0]/base;//产生随机数

return p;

}

其中base为基数,一般去2的整数倍,常数,u、v可以随意取。数组r[]为只能去一个值的数组。如:double[]r={5.0}.

java生成随机数0或1,只能是0,1二者其一,最好可以使1或0出现的概率符合高斯分布(正态分布)

Java内置了高斯正态随机数

Random.nextGaussian()获得均值为0,标准差为1的正态分布。

Random r=new Random();

for(int i=0;i20;i++)

System.out.println(r.nextGaussian());

=======

-0.13281412372658716

-0.01315269766483013

-0.056744105795208055

-1.0402491360478257

-0.5311391585982737

-0.3630802799191039

-0.9866340328819281

-0.8579720715397737

-0.9265915705393113

-0.21839994469893823

0.3671093015925613

-0.6560992663799461

-1.2695699508671745

0.046509998380311696

0.1952527864179513

0.9997730342084369

如果求阀值0.7,

Random r=new Random();

int c0=0,c1=0;

for(int i=0;i10000;i++){

byte n=(byte) (r.nextInt(10)=7?1:0); //获得一个0或1

if(n==0)c0++; else c1++;

}

System.out.println("zero:"+(c0/10000.0)+" one:"+(c1/10000.0));

=========

打印概率

zero:0.7068 one:0.2932

用JAVA 产生一个0到1的随机数

在java.lang.Math中有个Math.random()方法,它可以产生0-1之间(包括0但不包括1)的任意小数,所以用System.out.println(Math.Random());即可!要产生0或1的整数只需System.out.println((int)(Math.Random()+1));

java如何产生1-10随机数

java代码方法一如下:

int random=(int)(Math.random()*10+1)

java代码方法二如下:

package bdqn_Empy;

import java.util.Random;

public class Text {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

int a=0;

Random b=new Random();

a=b.nextInt(101);

System.out.println(a);

}

}

扩展资料:

可以先通过 random方法生成一个随机数,然后将结果乘以10。此时产生的随机数字即为大于等于0小于10的数字。

然后再利用nt方法进行转换它会去掉小数掉后面的数字即只获取整数部分,不是四舍五入)。最后即可获取一个0到9的整数型随机数字。其实现方法很简单,就是对原有的 grandom方法按照如下的格式进行变型:(int( Math. Random0*10)即可。

其实我们还可以对这个方法进行扩展,让其产生任意范围内的随机数。至需要将这个10换成n即可,如改为( int(Math. Random0n)。此时应用程序就会产生一个大于等于0小与n之间的随机数。

如将n设置为5,那么其就会产生一个0到5之间的整数型的随机数。如果将这个写成一个带参数的方法,那么只要用户输入需要生成随机数的最大值,就可以让这个方法来生成制定范围的随机数。

java生成随机数0或1,只能是0,1二者其一,怎么实现呢

int rd=Math.Random()0.5?1:0;

这样0和1出现的几率分别为百分之五十。

其实只要知道Math.Random()产生的数据为[0,1),那么想怎么处理都可以的,哈哈

java随机数生成0和1的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、java随机数生成0和1的信息别忘了在本站进行查找喔。