Files
zern/examples/puzzles/euler_14.zr
2025-12-23 17:08:42 +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)