C++プログラムの素因数
プライムファクター は与えられた数の因数である素数です。
数値の要因 は、与えられた数を得るために乗算される数です。
プライム因数分解 は、数をその素因数で再帰的に除算して、その数のすべての素因数を見つけるプロセスです。
Example : N = 120 Prime factors = 2 5 3 Factorization : 2 * 2 * 2 * 3 * 5
数の素因数について覚えておくべきいくつかのポイント
- 数の素因数のセットは一意です。
- 因数分解は、除算、共通の分母の検索など、多くの数学計算で重要です。
- これは暗号化における重要な概念です。
数の素因数を見つけるプログラム
例
#include <iostream> #include <math.h> using namespace std; void printPrimeFactors(int n) { while (n%2 == 0){ cout<<"2\t"; n = n/2; } for (int i = 3; i <= sqrt(n); i = i+2){ while (n%i == 0){ cout<<i<<"\t"; n = n/i; } } if (n > 2) cout<<n<<"\t"; } int main() { int n = 2632; cout<<"Prime factors of "<<n<<" are :\t"; printPrimeFactors(n); return 0; }
出力
Prime factors of 2632 are :2 2 2 7 47
-
C ++プログラムでの二分探索?
二分探索は、半区間探索、対数探索、または二分探索とも呼ばれ、ソートされた配列内のターゲット値の位置を見つける検索アルゴリズムです。二分探索は、ターゲット値を配列の中央の要素と比較します。それらが等しくない場合、ターゲットが存在できない半分が削除され、残りの半分で検索が続行され、再び中央の要素がターゲット値と比較され、ターゲット値が見つかるまでこれが繰り返されます。残りの半分が空の状態で検索が終了した場合、ターゲットは配列に含まれていません。アイデアは単純ですが、バイナリ検索を正しく実装するには、特に配列の値が範囲内の整数のすべてではない場合、終了条件と中間点の計算に関する微妙な点に注意する必要
-
数値が素数であるかどうかをチェックするC++プログラム
素数は1より大きい整数であり、素数の唯一の要素は1とそれ自体でなければなりません。最初の素数のいくつかは-です 2, 3, 5, 7, 11, 13 ,17 数が素数かどうかをチェックするプログラムは次のとおりです。 例 #include <iostream> using namespace std; int main() { int n=17, i, flag = 0; for(i=2; i<=n/2; ++i) { if(n%i==0) { &nbs