# Fibonacci numbers (bc)

From LiteratePrograms

**Other implementations**:**bc**| C | C Plus Plus templates | dc | E | Erlang | FORTRAN | Haskell | Icon | Java | JavaScript | Lisp | Lua | occam | Oz | PIR | Prolog | Python | Sed | sh | sh, iterative | T-SQL | Visual Basic .NET

The Fibonacci numbers are the integer sequence 0, 1, 1, 2, 3, 5, 8, 13, 21, ..., in which each item is formed by adding the previous two. The sequence can be defined recursively by

Fibonacci number programs that implement this definition directly are often used as introductory examples of recursion. However, many other algorithms for calculating (or making use of) Fibonacci numbers also exist.

<<fib.bc>>=fib main

## [edit] Implementation

This is a recursive implementation.

<<fib>>=define fib (n) { if(n<2) return n; return (fib(n-1)+fib(n-2)); }

## [edit] Test driver

<<main>>=for (i=0; i<30; ++i) { fib(i); }

Download code |