diff --git a/fibonacci_series/Dart/dart_fibonacci_class.dart b/fibonacci_series/Dart/dart_fibonacci_class.dart new file mode 100644 index 0000000..6dbf4eb --- /dev/null +++ b/fibonacci_series/Dart/dart_fibonacci_class.dart @@ -0,0 +1,27 @@ +import 'dart:io'; + +class Fibonacci { + static Iterable getSeries(int n) { + var series = []; + while (n >= 0) { + series.add(Fibonacci.getTerm(n)); + n--; + } + return series.reversed; + } + + static int getTerm(int n) { + if (n == 0) return 0; + if (n <= 2) return 1; + return Fibonacci.getTerm(n - 1) + Fibonacci.getTerm(n - 2); + } +} + +void main() { + print("Testing class Fibonacci..."); + + print(Fibonacci.getSeries(0).toString()); + print(Fibonacci.getSeries(1).toString()); + print(Fibonacci.getSeries(5).toString()); + print(Fibonacci.getSeries(12).toString()); +}