bash shell script fibonacci not showing value 2 af

2020-05-07 19:13发布

I am writing a bash script for fibonacci which is not printing the value after 0 1 1 . It is not printing "2" after 0 1 1. The code is given below.

echo "enter the number"
read n
a=0
b=1
c=0
echo $a
echo $b
while [ $b -le $n ]
do
  c=`expr $a + $b`
  echo $c
  b=`expr $b + 1`
  a=$b
  b=$c
done

2条回答
再贱就再见
2楼-- · 2020-05-07 19:54

In bash, do not use the dollar sign on the left hand side of an assignment.

$c=$a+$b

should be

c=$a+$b

but it probably still does not do what you want, try

c=$((a+b))

instead.

查看更多
Viruses.
3楼-- · 2020-05-07 20:08
echo "enter the number"
read n
a=0
b=1
c=0
while [ $b -le $n ]
do
  c=`expr $a + $b`
  echo $c ' = ' $a ' + '  $b
  a=$b
  b=$c
done
查看更多
登录 后发表回答