Linux Shell 简单编程之求出n以内的素数

输入整数n,在终端中打印输出n以内的素数
打开linux终端,我这里用的操作系统是Ubuntu Linux,在终端或者桌面新建一个扩展名为 .sh的shell文件,输入以下代码:

#get a prime from 1~value
echo "enter a value :"
read value
isPrime(){

    local var=$1
    for((i = 2;i <= $var;i++)){

        if [ $(($var % $i)) -eq 0 ]
        then
            return $i
        fi
    }

}
echo  -n "Prime in $value is : "
for((j = 2;j <= $value;j++)){

    isPrime $j
    temp=$?
    if [ $temp -eq $j ]
    then
        echo -n "$j "
    fi
}
echo ""

其中 value是我们需要输入的值,我们将会在终端打印输出 value以内的素数。以上代码可能不够精简,因为我在写的时候,也没有考虑到特别多的系统开销,所以也就没有优化代码,大家在使用的时候,可以稍作修改,嘿嘿~~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章