Files
zern/examples/puzzles/euler_04.zr
2025-12-21 14:50:09 +01:00

22 lines
444 B
Plaintext

func collatz_num[n: I64] : I64
if n % 2 == 0
return n / 2
return n * 3 + 1
func collatz_seq[n: I64]: I64
let i: I64 = 1
while n != 1
n = collatz_num(n)
i = i + 1
return i
func main[] : I64
let max: I64 = 0
let max_index: I64 = 0
for i in 1..1000000
let seq: I64 = collatz_seq(i)
if seq > max
max = seq
max_index = i
io.println_i64(max_index)