2007年5月4日金曜日

素数を任意の個数だけ出力


素数を任意の個数だけ出力するスクリプト。
検索を開始する数値を指定可能。
ちょっぴりフールプルーフ。
#runtime "hsp3cl"
#module
#defcfunc prime int num
    result = 1
    repeat (num + 1)/2 - 12
        if (num \ cnt) == 0 : result = 0 : break
    loop
    return result
#global

    repeat
        mes "素数をいくつ出力しますか?"
        input many, , 1
        if int(many) > 0 : break
        mes "1以上の整数値を入力してください..."
    loop

    repeat
        mes "いくつから調べ始めますか?"
        input start, , 1
        if int(start) > 1 : break
        mes "2以上の整数値を入力してください..."
    loop

    many = int(many)
    mes str(many) + "個の素数を出力します..."
    i = 0
    repeat -1int(start)
        if prime(cnt) {
            mes cnt
            i++
            if i == many : break
        }
    loop
    mes "終了しました。"
    end

0 件のコメント: