2~100000までの数の素因数分解

その他

プログラムを使って素因数分解しました。

#include<iostream>
using namespace std;

void pr_check(int b);

int main(){
    int x;
    int y;
    cout << "約数を表示します。値の範囲を2以上で指定してください\n";
    cout << "a~\n";
    cin >> x;
    cout << "~b\n";
    cin >> y;
    for(int i = x; i<=y; i++){
        pr_check(i);
    }
    return 0;
}

void pr_check(int b){
    int a;
    cout << b << "-----";
    for(a=2; a <= b;){
        if(b%a == 0){
            cout << a << ",";
            b = b/a;
        }
        if(b%a != 0){
            a++;
        }
    }
    cout << "\n";
}

入力した範囲の数すべてを素因数分解するものとなっています。

実行結果

2-----2,
3-----3,
4-----2,2,
5-----5,
6-----2,3,
7-----7,
8-----2,2,2,
9-----3,3,
10-----2,5,

↑こんな感じになっています。

100000までのものも置いときます。

a=2,b=1000

a=2,b=10000

a=2,b=100000

コメント

タイトルとURLをコピーしました