Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Branch: master
Fetching contributors…

Cannot retrieve contributors at this time

56 lines (37 sloc) 1.157 kB

Генерация псевдослучайной последовательности

a(k) = (D+(A(k-1))*L) mod N

D, L, N - Аргументы

A(0) - начальный элемент.

Обеспечить генерирование a(k) по возможности, чтоб период был достаточно большим. По заданным D, L, N определить период. Линейна.

Восстановить последовательность. Предложить свой вариант последовательности, в том числе вещественной. Сколько значений нужно найти, чтобы найти D, L, N.

C = 9, B = 3, A = 1

C = (D+(B*L)) mod N
B = (D+(A*L)) mod N

9 = (D+(3*L)) mod N
3 = (D+(1*L)) mod N

9 = (D+(3*L)) 
3 = (D+(1*L)) 

D = 9 - 3*L
3 = 9 - 3*L + 1*L

3 = 9 - 3*L + 1*L

B = C - B*L + A*L
B = C - (B-A) * L
B - C = - (B-A)*L
L = (B-C)/(A-B)
3 = (3-9)/(1-3)
3 = -6/-2


L = (BB-CC)/(AA-BB)
L = ((B+X1*N)-(C+X3*N))/((A+X2*N)-(B+X1*N))

D = C - B*L

K mod N = R
K div N = U
R+U*N = K

Jump to Line
Something went wrong with that request. Please try again.