编写Shell程序,实现功能:计算N!,使用函数的方法实现.

 我来答
xgjmlf
推荐于2017-12-16 · TA获得超过487个赞
知道小有建树答主
回答量:120
采纳率:0%
帮助的人:161万
展开全部
if [ $# -ne 1 ]
then
echo "输入一个整数"
exit 1
fi
i=1
sum=1

while [ $i -le $1 ]
do
sum=$((sum * i))
i=$((i+1))
done
echo $sum

这样可实现你的要求
cao_doctor
2013-01-12 · TA获得超过209个赞
知道答主
回答量:50
采纳率:0%
帮助的人:29.9万
展开全部
#!/bin/sh
exponentiation()
{
number=$1
product=1
for((i=1;i<=$number;i++))
do
product=$(($product * $i))
done
echo $product
}

GETFROM=$1
exponentiation $GETFROM

脚本保存为test.sh
chmod u+x test.sh
./test.sh N (N为你需要计算幂的数字)

./test.sh 10

3628800
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
maxnu
2013-01-06 · TA获得超过555个赞
知道小有建树答主
回答量:721
采纳率:50%
帮助的人:474万
展开全部
factorial(){
SUM=1
for i in `seq $1`
do
SUM=$(($SUM*$i))
done
echo $SUM
}

#test
factorial 10
追问

还是不行

追答
看一下你的程序?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
朱家小妹_
2013-01-06 · TA获得超过2523个赞
知道小有建树答主
回答量:2488
采纳率:25%
帮助的人:1072万
展开全部
fuction sn(n)
dim i as integer
sn=1
for i= 1 to n
sn=sn*i
next
end fuction
追问

不可以,

追答
对不起,我不认识你用的界面.可能是函数写法不通用.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式