How to calculate the 100th term of the sequence 8, 64, 80, 136, 152 in Scala

1 Answer

0 votes
/*
 
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
 
*/

object NextSequenceNumber {

  // ------------------------------------------------------------
  // Function to compute the nth term using the even-term formula
  // ------------------------------------------------------------
  def nthTerm(n: Int): Int = {
    if (n == 1) {
      8 // first term is fixed
    } else 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
    }
  }

  def main(args: Array[String]): Unit = {
    val n = 100

    val result = nthTerm(n)

    println(s"The 100th term of the sequence is: $result")
  }
}


/*
Run:
 
The 100th term of the sequence is: 3592
 
*/

 



answered May 12 by avibootz

Related questions

...