我试图从Python(What is the best algorithm for checking if a number is prime?)“拼写”到Shell脚本。这是我的想法(可能是很无聊的代码):Shell脚本文本
#!/bin/bash
prime(){
i=5
w=2
while [ `echo "$i*$i" | bc -l ` -le $n ]
do
if [ n % i -eq 0 ]
then echo "$n is not prime"
else
i = i + w
w = 6 - w
echo "$n is prime"
fi
done
}
echo "Test for knowing if a number is prime or not."
sleep 2
echo "Enter the number"
read n
if [ $n -eq 1 ]
then echo "Number 1 is not prime"
elif [ $n -eq 2 ]
then echo "Number two is prime"
elif [ $n -eq 3 ]
then echo "Number three is prime"
else
prime
fi
的问题是,当我把其他任何数字(4,5,6,...)程序不回回来,如果$ n是素数或不。如果有人能帮助我,我将非常感激。
问题是什么? – csmckelvey 2014-12-06 19:20:26
我忘了,很抱歉。我编辑了这个问题。感谢您的观察。 – Carlos 2014-12-06 19:25:06
如果你想继续保持同样的态度,那么你有一个漫长的夜晚... – 2014-12-06 19:37:35