/*
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
// ------------------------------------------------------------
function nthTerm(int $n): int {
if ($n === 1) {
return 8; // first term is fixed
}
if ($n % 2 === 0) {
// Even term formula
return 64 + 72 * ($n / 2 - 1);
} else {
// Odd term = previous even term + 16
$evenTerm = 64 + 72 * ((($n - 1) / 2) - 1);
return $evenTerm + 16;
}
}
$n = 100;
$result = nthTerm($n);
echo "The 100th term of the sequence is: $result\n";
/*
Run:
The 100th term of the sequence is: 3592
*/