如何编写一个shell脚本,求费波纳奇数列的前10项及总和?

如题所述

shell脚本。首先它是一个脚本,并不能作为正式的编程语言。因为是跑在linux的shell中,所以叫shell脚本。说白了,shell脚本就是一些命令的集合。举个例子,我想实现这样的操作:
1)进入到/tmp/目录;
2)列出当前目录中所有的文件名;
3)把所有当前的文件拷贝到/root/目录下;
4)删除当前目录下所有的文件。简单的4步在shell窗口中需要你敲4次命令,按4次回车。这样是不是很麻烦?当然这4步操作非常简单,如果是更加复杂的命令设置需要几十次操作呢?那样的话一次一次敲键盘会很麻烦。所以不妨把所有的操作都记录到一个文档中,然后去调用文档中的命令,这样一步操作就可以完成。其实这个文档呢就是shell脚本了,只是这个shell脚本有它特殊的格式。
Shell脚本能帮助我们很方便的去管理服务器,因为我们可以指定一个任务计划定时去执行某一个shell脚本实现我们想要需求。这对于linux系统管理员来说是一件非常值得自豪的事情。现在的139邮箱很好用,发邮件的同时还可以发一条邮件通知的短信给用户,利用这点,我们就可以在我们的linux服务器上部署监控的shell脚本,比如网卡流量有异常了或者服务器web服务器停止了就可以发一封邮件给管理员,同时发送给管理员一个报警短信这样可以让我们及时的知道服务器出问题了。
有一个问题需要约定一下,凡是自定义的脚本建议放到/usr/local/sbin/目录下,这样做的目的是,一来可以更好的管理文档;二来以后接管你的管理员都知道自定义脚本放在哪里,方便维护。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-19

你好,代码如下:

#!/bin/sh

arr=()

sum=0

fibonacci()

{

  fib1=0

  fib2=1

  fib3=$1

  for((i=1;i<=$1;i++));do

    fib3=$((fib1+fib2))

    fib1=$fib2

    fib2=$fib3

    arr[${#arr[@]}]=${fib3}

  done

}

fibonacci $1

for((i=0;i<${#arr[@]};i++));do

    echo -n ${arr[i]}" "

    sum=$((sum+${arr[i]}))

done

echo ""

echo "sum is:" $sum

运行截图:

本回答被网友采纳
第2个回答  2019-12-19
想编写一个shell的脚本,求斐波那契数列的前十项,其总和,这有一定的难度,但是也不是说不能解决的,找一下作业帮吧。
第3个回答  2019-12-19
如何编写一个42139本,求费波那契数列的前十业绩总和,这道题太深奥了,请求老师给解答一下吧,谢谢!
第4个回答  2019-12-19
要想编写一个30脚本求费用,拿手的体力全石晓的组合就可以解决这个问题。
相似回答