24 lines
485 B
Plaintext
24 lines
485 B
Plaintext
to hail.next :n
|
|
output ifelse equal? 0 modulo :n 2 [:n/2] [3*:n + 1]
|
|
end
|
|
|
|
to hail.seq :n
|
|
if :n = 1 [output [1]]
|
|
output fput :n hail.seq hail.next :n
|
|
end
|
|
|
|
show hail.seq 27
|
|
show count hail.seq 27
|
|
|
|
to max.hail :n
|
|
localmake "max.n 0
|
|
localmake "max.length 0
|
|
repeat :n [if greater? count hail.seq repcount :max.length [
|
|
make "max.n repcount
|
|
make "max.length count hail.seq repcount
|
|
] ]
|
|
(print :max.n [has hailstone sequence length] :max.length)
|
|
end
|
|
|
|
max.hail 100000
|