Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
36
Task/Recamans-sequence/Draco/recamans-sequence.draco
Normal file
36
Task/Recamans-sequence/Draco/recamans-sequence.draco
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
proc nonrec find([*] int A; word top; int n) bool:
|
||||
word i;
|
||||
bool found;
|
||||
i := 0;
|
||||
found := false;
|
||||
while i < top and not found do
|
||||
found := A[i] = n;
|
||||
i := i + 1
|
||||
od;
|
||||
found
|
||||
corp
|
||||
|
||||
proc nonrec gen_next([*] int A; word n) int:
|
||||
int add, sub;
|
||||
add := A[n-1] + n;
|
||||
sub := A[n-1] - n;
|
||||
A[n] :=
|
||||
if sub > 0 and not find(A, n, sub)
|
||||
then sub
|
||||
else add
|
||||
fi;
|
||||
A[n]
|
||||
corp
|
||||
|
||||
proc nonrec main() void:
|
||||
[30] int A;
|
||||
word i;
|
||||
|
||||
A[0] := 0;
|
||||
write("First 15 items: 0");
|
||||
for i from 1 upto 14 do write(gen_next(A, i):3) od;
|
||||
writeln();
|
||||
|
||||
while not find(A, i, gen_next(A, i)) do i := i + 1 od;
|
||||
writeln("First repeated item: A(", i:2, ") = ", A[i]:2)
|
||||
corp
|
||||
Loading…
Add table
Add a link
Reference in a new issue