RosettaCodeData/Task/Mian-Chowla-sequence/Icon/mian-chowla-sequence.icon
2026-04-30 12:34:36 -04:00

22 lines
546 B
Text

procedure main(A)
limit := \A[1] | 100
cnt := 0
write("First 30 terms:")
every cnt +:= (m := mian()\limit,1) do {
if cnt <= 30 then writes(" ",m)
if cnt = 30 then write("\nTerms 91 to 100:")
if 91 <= cnt <= 100 then writes(" ",m)
}
write()
end
procedure mian()
a := [1]
suspend 1
every n := seq(2) do {
every (sums := set(), s := (i := a[k := 1 to *a]) + (j := a[k to *a]|n)) do
if member(sums, s) then break next
else insert(sums,s)
suspend (put(a,n),n)
}
end