随笔 - 55  文章 - 0  评论 - 0  阅读 - 1047

22_生成斐波那契数列

1.斐波那契数列
#!/bin/bash

# 斐波那契数列后一个数字永远是前 2 个数字之和
# 0 1 1 2 3 5 8 13 21 34 55 89

arr=(0 1)

# 方法1
function fb1() {
    for i in $(seq 2 11); do
        arr[$i]=$(expr ${arr[-1]} + ${arr[-2]})
    done
    echo ${arr[@]}
}


# 方法2
function fb2() {
    for i in $(seq 100); do
        len=${#arr[@]}
        last1=$(($len - 1))
        last2=$(($len - 2))
        sum=$((${arr[$last1]} + ${arr[$last2]}))
        if [ $sum -eq $i ]; then
            arr+=($i)
        fi
    done

    echo ${arr[@]}
}
posted on   鸟叔书  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
< 2025年3月 >
23 24 25 26 27 28 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 1 2 3 4 5

点击右上角即可分享
微信分享提示