/*
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
Since the last step was +16, the next step must be +56.
Therefore, the next number is: 152 + 56 = 208
*/
#include <stdio.h>
// ------------------------------------------------------------
// Function to compute the next number in the alternating-difference pattern
// ------------------------------------------------------------
int nextNumberInSequence(const int seq[], int size) {
// Compute differences between consecutive numbers
int diff[128] = { 0 }; // large enough for this example
int diffCount = 0;
for (int i = 1; i < size; i++) {
diff[diffCount++] = seq[i] - seq[i - 1];
}
// The pattern alternates: 56, 16, 56, 16, ...
// To continue the pattern, take the second-to-last difference (56)
int nextDiff = diff[diffCount - 2];
// Return the next number in the sequence
return seq[size - 1] + nextDiff;
}
int main() {
// The given sequence
int seq[] = {8, 64, 80, 136, 152};
int size = sizeof(seq) / sizeof(seq[0]);
// Compute the next number using the function
int nextValue = nextNumberInSequence(seq, size);
printf("Next number in the sequence: %d\n", nextValue);
return 0;
}
/*
run:
Next number in the sequence: 208
*/