generateSequence static method

List<BigInt> generateSequence(
  1. int n
)

Generates a Fibonacci sequence up to the specified number of terms.

The sequence starts with F0 = 0 and F1 = 1.

Examples:

  • generate(0) returns []
  • generate(1) returns [0]
  • generate(2) returns [0, 1]
  • generate(5) returns [0, 1, 1, 2, 3]

Returns a List<BigInt> containing the Fibonacci numbers. Returns an empty list if n is 0.

Throws an ArgumentError if n is negative.

Implementation

static List<BigInt> generateSequence(int n) {
  if (n < 0) throw ArgumentError('Input must be a non-negative number.');
  if (n == 0) return [];
  if (n == 1) return [BigInt.zero];

  final List<BigInt> fibonacciSeries = [BigInt.zero, BigInt.one];
  for (int i = 2; i < n; i++) {
    fibonacciSeries.add(fibonacciSeries[i - 2] + fibonacciSeries[i - 1]);
  }
  return fibonacciSeries;
}