Shell实现菲波那切数列

本文介绍了如何使用Shell脚本以递归方式实现经典的菲波那切数列,详细阐述了代码实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 菲波那切数列大家一定也不陌生,我在这也就不多做解释了,下面我用三种方式实现菲波那切数列:

1、递归方式:

 28 if [ $# -ne 1 ];then
 29     exit 1
 30 fi
 31 function fib()
 32 {
 33     local num=$1
 34     [ $num -le 2 ] &&
 35     {
 36         echo 1
 37         return
 38     }
 39     echo "`fib $(( num-1 ))`+`fib $(( num-2 ))`" | bc
 40 }
 41 fib $1
 42 

2、循环方式:

  3 #first=1
  4 #second=1
  5 #last=1
  6 
  7 #i=3
  8 #while [ $i -le $1 ]
  9 #do
 10 #   let last=first+second
 11 #   let first=second
 12 #   let second=last
 13 #   let i++
 14 #done
 15 #echo $last
 16 
3、数组方式:

 17arr=(1 1)
 18 i=1
 19 while [ $i -le $1 ]
 20 do
 21     let arr[$i+1]=arr[$i]+arr[$i-1]
 22     let i++
 23 done
 24 echo ${arr[$i-1]}

运行结果:




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值