zoukankan      html  css  js  c++  java
  • 线性同余法产生1000个随机数

    设计思路:根据同余法产生随机数线性同余算法有m 、a 、c 和X0 4个参数,通过置Xn  ≡aXn + c (mod m) ,求得随机数序列< Xn > , 这个序列称作线性同余序列。m、a 、c 和X0 分别称做模数、乘数、增量和初始值。从代码中设置m,a,c的值,在从键盘输入随机种子X0,再利用for循环产生n个随机数。

     程序流程图:

    源代码:

    package 测试二;

    import java.util.Scanner;
    public class Random {
    public static void main(String[] args)
    {
    //输入参数;
    int j=2;
    int m=(int) (Math.pow(2, 27)-1);
    int a=12;
    int c=0;
    System.out.println("请输入你要生成的随机数个数N:");
    Scanner input=new Scanner (System.in);
    int n=input.nextInt();
    //开辟大小为N的数组;
    int b[];
    b=new int[n];
    System.out.println("请输入随机数的种子:");
    //输入随机数的种子;
    b[0]=input.nextInt();
    System.out.println("第1个随机数: "+b[0]);
    for(int i=0;i<n-1;i++)
    {
    b[i+1]=(b[i]*a+c)%m;
    System.out.print("第"+j+"个随机数:");
    System.out.println(b[i+1]);
    j++;
    }
    }
    }

    结果截图:

  • 相关阅读:
    JSON基础知识
    Java 环境配置
    接口测试基础知识
    Fiddler初学笔记
    es6数组方法findIndex()
    sass+less相关
    前端库/框架/插件相关
    知名博主相关
    CSS相关
    移动Web相关
  • 原文地址:https://www.cnblogs.com/xiaohaigege666/p/7663493.html
Copyright © 2011-2022 走看看