博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2.动手动脑
阅读量:4700 次
发布时间:2019-06-09

本文共 792 字,大约阅读时间需要 2 分钟。

一.动手动脑

问题:利用同余法产生不重复的随机数。

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

 

程序流程图:

 

 

程序源代码:

package tourial2;

 

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("请输入产生的随机数的数量:");

Scanner input=new Scanner (System.in);

int n=input.nextInt();

//开辟输入大小的数组;

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++;

}

 

}

 

}

程序截图:

 

 

转载于:https://www.cnblogs.com/ljysy/p/7658104.html

你可能感兴趣的文章
IO流入门-第十章-DataInputStream_DataOutputStream
查看>>
DRF的分页
查看>>
Mysql 模糊匹配(字符串str中是否包含子字符串substr)
查看>>
python:open/文件操作
查看>>
流程控制 Day06
查看>>
Linux下安装Tomcat
查看>>
windows live writer 2012 0x80070643
查看>>
tomcat 和MySQL的安装
查看>>
git常用操作
查看>>
京东SSO单点登陆实现分析
查看>>
u-boot启动第一阶段
查看>>
MySQL批量SQL插入性能优化
查看>>
定义列属性:null,default,PK,auto_increment
查看>>
用户画像展示
查看>>
C#中StreamReader读取中文出现乱码
查看>>
使用BufferedReader的时候出现的问题
查看>>
批处理文件中的路径问题
查看>>
hibernate出现No row with the given identifier exists问题
查看>>
为什么wait()和notify()属于Object类
查看>>
配置NRPE的通讯
查看>>