你的位置:首页 > Java教程

[Java教程]随机数问题


Math.random()随机生成(0,1)之间的float数,Random7随机生成[1,7]之间的整数,利用Random7构造Random10的步骤:

1、生成数a:a是两次Random7的结果,即a=(Random7()-1)*7+Random7()-1;

2、判断a是否小于40,如果小于40,则返回a/4+1,即为最后的结果;否则,继续执行Random10;

public class B
{
public static int Random7(){
return (int)(Math.random()*7+1);
}
public static int Random10(){
int a=49;
while(a>=40){
a=(Random7()-1)*7+Random7()-1;
}
return a/4+1;
}
public static void main(String[] args)
{
for(int i=0;i<50;i++){
System.out.println(Random10());
}
}
}