首页 > 其他分享 >动手动脑——纯随机数发生器

动手动脑——纯随机数发生器

时间:2022-09-21 12:22:18浏览次数:55  
标签:56 205 58 207 197 动脑 发生器 随机数 170

线性同余方法(LCG)是一种产生伪随机数的方法。

 

其中A,B,M是产生器设定的常数。

LCG的周期最大为M,但大部分情况都会少于M。要令LCG达到最大周期,应符合以下条件:
1、B,M互质;
2、M的所有质因数都能整除A-1;
3、若M是4的倍数,A-1也是;
4、A,B,N0都比M小;
5、A,B是正整数。

从该式可以看出,该算法由于构成简单,具有以下优点:

1计算速度快

2易于实现

3易于写入硬件

其中B和M对计算结果影响很大

package demo;

import java.util.Scanner;

public class Demo {
	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		int size = sc.nextInt();
		Demo.myRandom(3, size);	
	}
	
	public static void myRandom(int x0, int size) {
		int x;
		x = x0;
		String s = new String();
		for(int i=0; i<size; i++) {
			x *= 214013;
			x += 2531011;
			s += (x >> 16) & 0xff;
			System.out.println(s);
			s = "";
		}
	}
}

  

结果:

1000
48   28   78   131   119
25   38   207   81   136
33   73   231   0   74
95   55   153   41   6
182   254   140   102   58
195   135   211   24   249
185   0   137   0   209
111   83   157   81   44
165   76   146   187   66
216   8   79   225   40
200   61   212   92   71
175   233   25   101   157
142   32   170   249   56
38   207   42   5   224
128   188   160   93   96
86   101   152   78   236
197   78   231   53   236
13   75   96   162   142
36   3   111   68   229
84   3   53   80   155
212   9   59   231   9
96   147   0   151   105
161   158   170   177   140
216   70   56   32   223
46   202   205   236   5
140   243   119   179   214
93   170   10   64   11
21   170   0   52   163
33   115   139   205   87
249   194   13   42   6
76   150   85   118   104
66   150   33   91   204
16   176   252   63   238
175   118   174   73   227
74   38   75   221   147
225   149   207   142   188
223   159   89   235   222
58   251   236   107   43
165   185   225   108   56
66   199   123   6   26
175   177   221   113   93
208   66   66   44   219
250   205   174   42   207
72   147   189   144   210
204   209   90   168   240
177   22   155   222   207
67   194   164   19   246
108   159   115   30   88
228   196   13   41   223
207   52   20   58   168
46   220   0   59   1
0   3   40   160   51
123   209   180   12   239
176   155   255   89   239
177   140   133   50   207
182   186   184   18   183
156   162   222   242   81
146   34   41   227   120
221   240   229   169   225
97   90   50   215   18
210   107   131   68   214
207   73   93   134   10
240   153   129   84   167
252   5   254   69   139
88   74   213   187   102
128   82   42   171   62
175   141   83   16   26
233   160   64   130   7
141   240   87   34   177
101   145   226   101   166
243   142   41   70   145
125   68   126   144   205
171   127   45   88   36
5   0   228   171   48
130   154   21   144   206
186   243   126   164   140
185   179   179   154   32
19   24   28   200   202
34   180   34   154   88
91   141   115   189   155
191   69   82   0   103
18   221   201   16   71
233   226   73   76   14
23   3   90   114   130
58   141   144   69   216
58   56   127   214   130
215   120   164   39   249
31   203   159   12   183
209   103   103   205   92
154   139   109   155   194
168   149   226   238   99
234   148   5   214   170
70   89   216   226   33
127   127   225   136   95
228   236   251   135   38
51   60   197   178   4
176   244   193   63   7
22   34   10   32   163
57   197   38   33   72
65   0   245   237   44
232   121   236   208   89
78   47   254   47   244
11   68   10   151   197
102   243   44   85   12
66   189   105   185   190
1   173   252   7   48
74   234   49   21   172
203   178   101   137   20
126   79   31   150   112
84   189   244   236   89
132   90   195   251   111
108   86   34   145   125
255   217   158   2   172
93   173   70   205   115
60   95   113   255   117
96   171   211   176   208
59   197   56   91   106
4   82   200   54   172
123   43   175   151   242
92   161   119   118   167
115   33   81   197   79
44   149   11   132   187
166   226   40   151   248
119   1   129   26   180
166   198   244   110   225
19   77   224   88   139
144   88   108   23   207
48   98   253   8   0
192   181   167   18   250
248   77   22   78   25
208   23   237   152   131
174   91   245   183   118
24   194   129   191   128
252   190   135   240   155
85   166   42   104   188
72   251   15   190   160
27   117   123   219   84
75   176   83   230   228
56   6   43   67   211
70   119   121   39   178
66   46   4   100   137
125   236   108   113   5
211   125   46   60   35
231   35   7   3   197
74   136   217   120   215
55   13   84   24   53
17   152   160   221   158
164   164   155   64   102
165   1   20   22   79
23   208   35   162   243
5   109   79   138   161
180   101   198   184   80
44   217   132   35   81
208   170   205   68   107
190   30   223   44   10
209   72   174   139   119
24   56   61   177   189
146   153   162   29   23
91   164   123   12   136
58   159   48   176   71
49   148   112   125   103
173   60   23   224   168
91   203   207   253   51
250   91   71   199   43
70   83   126   183   205
119   38   197   208   37
56   121   51   191   94
105   132   173   50   81
222   174   73   7   13
107   112   177   242   82
53   53   41   161   170
241   234   193   101   173
45   214   203   205   18
148   143   203   127   84
117   229   11   103   92
19   27   170   123   60
74   90   235   169   15
42   101   186   154   147
78   216   254   108   240
170   149   186   11   140
160   201   140   61   47
124   156   215   65   225
220   5   43   8   239
112   62   22   58   122
164   149   231   47   139
14   48   120   134   218
218   146   47   53   255
191   18   148   17   60
198   57   28   114   93
4   75   112   255   140
174   153   209   110   58
154   27   229   18   160
171   155   5   199   116
191   87   213   123   88
196   40   244   217   194
237   167   245   7   147
153   180   75   127   233
199   79   2   248   25
30   136   204   166   146
18   183   144   27   230

  

标签:56,205,58,207,197,动脑,发生器,随机数,170
From: https://www.cnblogs.com/ashuai123/p/16715172.html

相关文章

  • java 动手动脑 方法重载
    如下代码://MethodOverload.java//UsingoverloadedmethodspackageHJssss;publicclasszhuce{ publicstaticvoidmain(String[]args){ System.out.printl......
  • 动手动脑随机数发生器与查看不同
    //随机生成1000个整数publicclassTest07{publicstaticvoidmain(String[]args){for(inti=0;i<1000;i++){intmin=2;//定义随机数的最小值......
  • 动手动脑随机数
      packagetest;importjava.util.Random;importjava.util.Scanner;publicclassheima{publicstaticvoidmain(String[]args){ Randomr=newRandom(S......
  • pytorch 随机数种子
    https://zhuanlan.zhihu.com/p/391875795https://zhuanlan.zhihu.com/p/419063125可复现性在硬件设备(CPU、GPU)不同时,完全的可复现性无法保证,即使随机种子相同。但是,在同......
  • C++ 由快排学习到的的随机数等知识
    起:力扣的912题数组排序,想着先用快速排序来写写,在实际用c++编写的时候,有一些之前没注意到的细节问题造成了一些麻烦。912.排序数组-力扣(LeetCode)   快排......
  • java产生一个随机数
    //随机产生8位数StringBuilderstr=newStringBuilder();//定义变长字符串Randomrandom=newRandom();//随机生成数字,并添加到字符串for(inti=0;i<8;i++){str.a......
  • R语言中rnorm、runif生成符合正太分布和均匀分布的随机数
     001、rnorm用于生成符合正态分布的随机数a<-rnorm(10)##生成10个均值为为0,标准差为1的符合正太分布随机数amean(a)sd(a)  a<-rnorm(10,3,5)......
  • 生成随机数
    #include<bits/stdc++.h>usingnamespacestd;mt19937lxs(time(0));//time(0):电脑时间intgetRandomNumber(intl,intr){returnlxs()%(r-l+1)+l;//from[l,r]}......
  • C#: 三元表达式、质数的判别、随机数的创建、枚举的应用
    三元表达是的运用:代码:Console.WriteLine("请输入第一个数字");intnumber1=Convert.ToInt32(Console.ReadLine());Console.WriteLine("......
  • 信息学奥赛一本通 1184:明明的随机数
    时间限制:1000ms      内存限制:65536KB提交数:29248   通过数:18480【题目描述】明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性......