fun sumEvenNumbersInFibonacci(n: Int): Int {
if (n < 1) return 0
var currentNumber = 0
var nextNumber = 1
var sum = 0
val sequence = mutableListOf(0, 1)
for (i in 0 until (n - 2)) {
val temp = nextNumber
nextNumber = currentNumber + nextNumber
currentNumber = temp
sequence.add(nextNumber)
if (nextNumber % 2 == 0) {
sum += nextNumber
}
}
println(sequence.joinToString(" "))
return sum
}
fun main() {
val limit = 16
val sumResult = sumEvenNumbersInFibonacci(limit)
println("Sum = $sumResult")
}
/*
run:
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610
Sum = 798
*/