/*
Pattern Explanation:
The sequence is: 8, 64, 80, 136, 152
Compute the differences between consecutive numbers:
64 - 8 = 56
80 - 64 = 16
136 - 80 = 56
152 - 136 = 16
The pattern clearly alternates:
+56, +16, +56, +16, ...
8 + 56 = 64
64 + 16 = 80
80 + 56 = 136
136 + 16 = 152
This alternating pattern continues forever.
Even-term formula:
Term(2) = 64
Each pair adds: 56 + 16 = 72
Number of even terms up to Term(100):
100 / 2 = 50 even terms
Number of full pairs after Term(2):
50 - 1 = 49 pairs
Formula for even terms:
Term(n) = 64 + 72 × (n/2 - 1)
For n = 100:
Term(100) = 64 + 72 × 49 = 3592
*/
// ------------------------------------------------------------
// Function to compute the nth term using the even-term formula
// ------------------------------------------------------------
fun nthTerm(n: Int): Int {
if (n == 1) {
return 8 // first term is fixed
}
return if (n % 2 == 0) {
// Even term formula
64 + 72 * (n / 2 - 1)
} else {
// Odd term = previous even term + 16
val evenTerm = 64 + 72 * ((n - 1) / 2 - 1)
evenTerm + 16
}
}
fun main() {
val n = 100
val result = nthTerm(n)
println("The 100th term of the sequence is: $result")
}
/*
Run:
The 100th term of the sequence is: 3592
*/