Download code

From LiteratePrograms

Jump to: navigation, search

Back to Fibonacci_numbers_(sh)

Download for Windows: single file, zip

Download for UNIX: single file, zip, tar.gz, tar.bz2

fib.sh

 1 #!/bin/sh
 2 # Copyright (c) 2008 the authors listed at the following URL, and/or
 3 # the authors of referenced articles or incorporated external code:
 4 # http://en.literateprograms.org/Fibonacci_numbers_(sh)?action=history&offset=20080131185251
 5 # 
 6 # Permission is hereby granted, free of charge, to any person obtaining
 7 # a copy of this software and associated documentation files (the
 8 # "Software"), to deal in the Software without restriction, including
 9 # without limitation the rights to use, copy, modify, merge, publish,
10 # distribute, sublicense, and/or sell copies of the Software, and to
11 # permit persons to whom the Software is furnished to do so, subject to
12 # the following conditions:
13 # 
14 # The above copyright notice and this permission notice shall be
15 # included in all copies or substantial portions of the Software.
16 # 
17 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18 # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19 # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20 # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
21 # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
22 # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
23 # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24 # 
25 # Retrieved from: http://en.literateprograms.org/Fibonacci_numbers_(sh)?oldid=12447
26 
27 fib () {
28         n=$1
29 
30         if test $n -lt 2 ;then
31                 echo "$n"
32 
33         else
34                 echo "`fib $(echo $n-1 | bc)`+`fib $(echo $n-2 | bc)`" | bc
35         fi
36 }
37 
38 for n in 1 2 3 4 5 6 7 8 9 10; do
39         echo "fib $n = `fib $n`"
40 done
41 
42 


Views
Personal tools