该程序实现
f(x) = 2f(x-1) + x * x
这样一个函数,通过传入 参数 x 计算 表达式的值
function f() { local num="$1" if [ $num = 0 ] #注意与C语言的不同,不是‘==’,条件判断要有空格 赋值等号之间不要加空格 then ret=0 else let "dec=num-1" f $dec let "ret=$? * 2 + $1 * $1" #‘$?’ 是上一次函数的返回值 fi return $ret } for((i=0; i<10; i++)) #注意for循环的两层“()” do f $i #不要忘了加‘$’ echo $? echo done
运行结果:

本文介绍了一个使用Shell脚本语言实现的递归函数案例,该函数用于计算一个特定数学表达式的值。通过输入不同的参数x,可以得到f(x) = 2f(x-1) + x*x 的计算结果。
542

被折叠的 条评论
为什么被折叠?



