YY-LIN 发表于 2018-8-28 07:02:11

shell脚本 一些基本应用题

function fib(){  
    local ret1=0
  
    local ret2=0
  
    local num=$1
  
    local sum=0
  
    if [ $num -le -1 ];then
  
      echo -1
  
      return
  
    elif [ $num -le 1 ];then
  
      echo 1
  
      return
  
    else
  
      let num--
  
      ret1=$(fib $num )
  
      let num--
  
      ret2=$(fib $num )
  
      let sum=ret1+ret2
  
      echo $sum
  
    fi
  
}
  
read val
  
fib $val
  

  
# fib non_r
  
input=$1
  
data1=1;
  
data2=2;
  
index=2;
  
tmp=1;
  
if [ $input -le '-1' ];then
  
    echo 0
  
elif [ $input -le '1' ];then
  
    echo 1
  
else
  
    while [ $index -lt $input ]
  
do
  
    let tmp=$data2
  
    let data2=$data1+$data2
  
    let data1=$tmp
  
    let index=index+1
  
done
  
fi
  
echo $data2


页: [1]
查看完整版本: shell脚本 一些基本应用题