Initial data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 72d218235f
commit f23f22d71c
199087 changed files with 3378941 additions and 0 deletions

View file

@ -0,0 +1,41 @@
PROC flip = ([]INT s, INT n) []INT:
BEGIN
[UPB s]INT ss := s;
INT temp;
FOR i TO n OVER 2 DO
temp := ss[i];
ss[i] := ss[n-i+1];
ss[n-i+1] := temp
OD;
ss
END;
PROC pancake sort = ([]INT s) []INT:
BEGIN
INT m;
[UPB s]INT ss := s;
FOR i FROM UPB s DOWNTO 2 DO
m := 1;
FOR j FROM 2 TO i DO
IF ss[j] > ss[m] THEN
m := j
FI
OD;
IF m < i THEN
IF m > 1 THEN
ss := flip (ss,m)
FI;
ss := flip (ss,i)
FI
OD;
ss
END;
[10]INT s;
FOR i TO UPB s DO
s[i] := ENTIER (next random * 100-50)
OD;
printf (($"Pancake sort demonstration"l$));
printf (($"unsorted: "10(g(4) )l$, s));
printf (($"sorted: "10(g(4) )l$, pancake sort(s)))