Subversion Repositories wimsdev

Rev

Rev 3265 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
20 reyssat 1
!if $wims_read_parm!=slib_header
2
 !goto proc
3
!endif
4
slib_title=Generation of linear congruential random integers
5
slib_parms=4\
6
 ,n\
7
 ,a\
8
 ,b\
9
 ,m
10
slib_author=Bernadette PERRIN-RIOU
11
slib_out=n integers generated by the linear congruences ax+b mod m
12
slib_synonyme=
13
slib_comment=The length of the data numbers is limited.
14
slib_example=10, 3,7,11
15
!exit
16
 
17
:proc
18
slib_out=
19
 
20
!distribute item $wims_read_parm into slib_n,slib_a,slib_b,slib_m
21
slib_A=!randint $slib_m
22
 
23
slib_out=!exec pari {slib_L=vector($slib_n);slib_A=$slib_A;\
24
for(slib_k=1,$slib_n,\
25
slib_A=lift(Mod($slib_a*slib_A+$slib_b,$slib_m));\
26
slib_L[slib_k]=slib_A);print(slib_L);}
27
 
28
slib_out =!trim $slib_out