- 项目要求:输入一个随机数n,显示1~n之间所有的素数,并在下一行输出它们之和
解决思路:素数(质数)指只能被1和其本身整除的整数。
[root@localhost ~]# vim sushu.sh
#!/bin/bash
echo -n "please enter number:"
read n
declare -i a //取整数i,a
a=0 //此处a可以看成被整除的次数
for((i=1;i<=n;i++))
do
for((x=1;x<=i;x++))
do
b=$(( $i%$x ))
if [[ $b -eq 0 ]]; then
a=$a+1
fi
done
if [[ $a -eq 2 ]]; then
echo -n $i " "
let sum=$sum+$i
fi
a=0
done
echo -e "\n质数和为:$sum"
[root@localhost ~]# chmod +x sushu.sh //赋予该文件执行权限
[root@localhost ~]# sh sushu.sh //编译结果