线性同余方法(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