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以內的素數。以上代碼可能不夠精簡,因爲我在寫的時候,也沒有考慮到特別多的系統開銷,所以也就沒有優化代碼,大家在使用的時候,可以稍作修改,嘿嘿~~

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