纯随机数发生器

匿名 (未验证) 提交于 2019-12-03 00:12:02

public class Suijishu   

  public static void main(String[] args) {  

    int n=1000;//n是生成随机数的个数

    Creat(n);

  }
  static BigInteger Creat(int n) {//生成随机数
    BigInteger result;//生成的随机数
    if(n==1) {//生成第一个随机数,由于没有Creat(n-1),所以用Math.random();
      result=BigInteger.valueOf((int)Math.random()*100000+1);
      System.out.println("第1个随机数是"+result);
      return result;
    }
    else {
      BigInteger i=Creat(n-1).multiply(BigInteger.valueOf(16807));
      result=i.mod(BigInteger.valueOf(Integer.MAX_VALUE));//随机数等于Creat(n-1)*16807%int.MAX_VALUE
      System.out.println("第"+n+"个随机数是"+result);
      return result;
    }
  }

}

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!