Just another update
This commit is contained in:
parent
a25938f123
commit
00a190b0a6
6591 changed files with 94363 additions and 23227 deletions
|
|
@ -0,0 +1,54 @@
|
|||
*process source xref;
|
||||
bogosort: Proc Options(main);
|
||||
Dcl SYSPRINT Print;
|
||||
Dcl (HBOUND,RANDOM,TIME) Builtin;
|
||||
Dcl tim Pic'(9)9';
|
||||
Dcl timms Pic'(3)9' def tim pos(7);
|
||||
tim=time();
|
||||
x=random(timms);
|
||||
Dcl a(5) Dec Fixed(5,1) Init(-21,333,0,444.4,1);
|
||||
Dcl (x,y,temp) Dec Fixed(5,1);
|
||||
Dcl (n,bogo,j,u,v) Bin Fixed(31);
|
||||
n=hbound(a);
|
||||
Call tell('un-bogoed');
|
||||
loop:
|
||||
Do bogo=1 By 1;
|
||||
Do j=1 To n-1;
|
||||
jp=j+1;
|
||||
x=a(j);
|
||||
y=a(jp);
|
||||
if y>=x Then
|
||||
Iterate;
|
||||
u=rand(1,n);
|
||||
Do Until v^=u
|
||||
v=rand(1,n);
|
||||
End;
|
||||
Temp=a(u);
|
||||
a(u)=a(v);
|
||||
a(v)=temp;
|
||||
Iterate loop;
|
||||
End;
|
||||
Leave;
|
||||
End;
|
||||
|
||||
Put Edit('number of bogo sorts performed =',bogo)(Skip,a,f(4));
|
||||
call tell(' bogoed');
|
||||
Return;
|
||||
|
||||
tell: Proc(txt);
|
||||
Dcl txt Char(*);
|
||||
Dcl t Bin Fixed(31);
|
||||
Put Edit(txt)(skip,a);
|
||||
Do t=1 to n;
|
||||
Put Edit(a(t))(Skip,f(6,1));
|
||||
End;
|
||||
End;
|
||||
|
||||
rand: Proc(lo,hi) Returns(Bin Fixed(31));
|
||||
Dcl (lo,hi,res) Bin Fixed(31);
|
||||
Dcl r Bin Float(31);
|
||||
r=random();
|
||||
res=r*(hi-lo+1)+lo;
|
||||
Return(res);
|
||||
End;
|
||||
End;
|
||||
Loading…
Add table
Add a link
Reference in a new issue