「素因数分解」の編集履歴(バックアップ)一覧はこちら

素因数分解」(2011/02/12 (土) 21:12:43) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

*素因数分解 説明を書くのが面倒くさいので、とりあえずソースコードだけ載せておきます。 小さい数なら問題なく分解できるはずです。 #include <iostream> #include <vector> using namespace std; //素因数分解 vector<int> f(int x){ int d=3, q; vector<int> vc; while( x >= 4 && (x % 2) == 0 ){ vc.push_back( 2 ); x /= 2; } q = x / d; while( q >= d ){ if( (x % d) == 0 ){ vc.push_back( d ); x = q; }else{ d += 2; } q = x / d; } vc.push_back( x ); return vc; } int main(){ int x; vector<int> vc; while( cin >> x , x ){ vc.clear(); vc = f(x); cout << x << " = " ; for(int i=0 ; i<vc.size() ; i++){ cout << vc[i] << ""; (i==vc.size()-1)? cout << endl : cout << " * "; } } } ...

表示オプション

横に並べて表示:
変化行の前後のみ表示:
目安箱バナー