gpt4 book ai didi

linux - 斐波那契数列计算器

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:14:00 25 4
gpt4 key购买 nike

我的一些家庭作业有问题,所以基本上我们被要求创建一个 bash 脚本,该脚本接受一个大于 2 的变量并返回相同数量的斐波那契数列,即如果我给 5,它会打印:0 1 1 2 3我做了一些研究并提出了一个我在网上任何地方都没有真正看到的独特想法,(请记住我在 python 方面有一些经验)但是我遇到了一个问题,所以基本上我在 bash 和 2 中使用 for 表达式变量来计算序列,我首先手动将它们设置为 0 和 1(序列中的第一个和第二个数字),然后我将它们加在一起,同时改变它们的值,

下面是代码:

#!/bin/bash
a=0
b=1
for i in $(seq 1 $1);
do
if ["$a" -gt "$b"]
then
b=($a +$b)
echo "$b"
else
a=($a +$b)
echo $a
fi
done

我有很多问题,希望完全脱离上下文,但我希望你能了解总体思路,并能帮助指导我解决问题:/似乎我想要将某些东西视为数字,但它被视为文本......虽然不确定,但非常感谢任何帮助

最佳答案

你非常接近,一些小的语法更改和新的初始值使其工作。

注意事项:

  • 空格在 bash 中很重要,尤其是特殊字符 [ ] ;
  • 另外,可以使用 let 强制计算整数

使用比较来仅用两个变量进行计算的好主意:)

#!/bin/bash - 
a=1
b=0
echo $a
for i in $(seq 1 $1);
do
if [ $a -gt $b ] ; then
let b=($a +$b)
echo $b
else
let a=($a +$b)
echo $a
fi
done

关于linux - 斐波那契数列计算器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56136693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com