fibonacci_smart.alc 444 B

1234567891011121314151617181920
  1. include "primitives.alh"
  2. Element numbers = ?
  3. Integer function fib(param : Integer):
  4. Integer new
  5. while (param > list_len(numbers)):
  6. new = list_len(numbers)
  7. list_append(numbers, integer_addition(dict_read(numbers, new - 2), dict_read(numbers, new - 1)))
  8. return dict_read(numbers, param - 1)!
  9. Void function main():
  10. numbers = create_node()
  11. list_append(numbers, 1)
  12. list_append(numbers, 1)
  13. while(True):
  14. output(fib(input()))
  15. return!