用shell显示斐波那契数列前n项 Linux Ubuntu 18.04.2

匿名 (未验证) 提交于 2019-12-02 21:56:30
版权声明:作者:undefinedUser_1 来源:CSDN 本文为博主原创文章,转载请附上博文链接 https://blog.csdn.net/undefinedUser_1/article/details/90304577





核心代码:

c=${a} a=${b} b=$((${c}+${b})) 

a=${b}这时a就变成了a的下一位的值,b=$((${c}+${b}))这时b就成了b的下一位的值,而c=${a}是为了保留a在变成下一位之前的值,方便b变成下一位的值时进行运算(因为a已经变成a的下一位了,所以不能直接+a。而如果直接b=$((${a}+${b})),那么a下一位的值就改变了),然后把三个运算放在循环里就可以无限地算下去了。



创建shell脚本

mkdir mybin),这样可以方便管理写过的shell脚本。进入该目录(cd mybin),下面这条指令可以创建并进入mybin

mkdir mybin; cd mybin 

Fibonacci.sh),我这里用的时vim文本编辑器,也可以用vi来编辑,不过vim比vi好用,建议用vim。 Fibonacci是我这个shell脚本的文件名,读者可以自行命名更改。

vim  Fibonacci.sh 

shell代码

#!/bin/bash #输入数字n显示斐波那契数列的前n项  a=1 				#第一项 b=1         		#第二项 c=0         		#中间变量,用来储存a的值 Fibonacci=0			#斐波那契数列的第n项 read -p "输入数字n,显示数列的前n项" n  #如果n<=3则输出前三项 if [ "${n}" -le "3" ]; then         case ${n} in                 "1")                         Fibonacci=${a}                         echo -e "${Fibonacci}"                         ;;                 "2")                         Fibonacci=${a}                         echo -e "${Fibonacci}"                         echo -e "${Fibonacci}"                         ;;                 "3")                         Fibonacci=${a} 						echo -e "${Fibonacci}"                         echo -e "${Fibonacci}"                         Fibonacci=$((${a}+${b}))                         echo -e "${Fibonacci}"         esac fi    #如果n>=4,输出剩余的项 if [ "${n}" -ge "4" ]; then         Fibonacci=${a}         echo -e "${Fibonacci}"         echo -e "${Fibonacci}"         Fibonacci=$((${a}+${b}))         echo -e "${Fibonacci}"          for ((i=4; i<=${n}; i=i+1 ))         do            	c=${a}            	a=${b}            	b=$((${c}+${b})) 			Fibonacci=$((${a}+${b}))             echo -e "${Fibonacci}"         done fi  



运行shell脚本

xxx.sh(xxx为这个shell脚本的文件名)

bash Fibonacci.sh 




总结




文章来源: https://blog.csdn.net/undefinedUser_1/article/details/90304577
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!