Blame view

fibonacci.sh 467 Bytes
cd7c3b792   root   e41d3f75-d864-476...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
  #!/bin/bash
  
  #set -x
  
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
  
  function is_int {
  	if grep -E -v -q "^-?[0-9]+$" <<< $1; then
  		return 1
  	fi
  	return 0
  }
  
  if [ -z $1 ] || ! is_int $1 || (($1 <= 0)); then 
  	printf "\
  Usage: %s nbr_int
      nbr_int: Un nombre entier supérieur à 0
  " $0 
  	exit 1
  fi
  
  a=0
  b=1
  
  while (($b < $1)); do
  	printf "%d
  " $b
  	((b=a+b))
  	((a=b-a))
  done
  
  printf "b/a = %1.15f
  " $(echo $b/$a | bc -l)
  
  exit 0