let max = 1000 var a = Array.Empty(max, 0) for n in 0..(max-2) { var m = n - 1 while m >= 0 { if a[m] == a[n] { a[n+1] = n - m break } m -= 1 } } print("The first ten terms of the Van Eck sequence are: \(a[0..10].ToArray())") print("Terms 991 to 1000 of the sequence are: \(a[991..999].ToArray())")