私は C++ が初めてで、素因数を計算するプログラムを作成しようとしています。私のアルゴリズムはほとんど大丈夫ですが、関数を適切にフォーマットする方法がわかりません。誰かがこの混乱を片付けるのを手伝ってください
#include <iostream>
using namespace std;
void getPrimeFactor(int);
int factor(int fisrt, int last)
{
int i = 0;
for (i = fisrt; i <= last; i++)
int getPrimeFactor(int n)
{
if (i < 0)
i = -i;
// For i < 2; it is just i
if (i < 2)
return i;
// otherwise, for an even number it is 2
if (i % 2 == 0)
return 2;
// for other odd numbers, search for a divisor
// until SQRT (n) [conceptual] n / div >= div is
// equivalent to SQRT (n) >= div
for (int div = 3; i / div >= div; div += 2)
{
// if div is a divisor, just return it.
if (i % div == 0)
return div;
}
// There is no divisor (n is prime), return it.
return i;
}
return 0;
}
int main()
{
int fisrtN; int lastN; int counter; int answer;
cin >> fisrtN;
cin >> lastN;
answer = factor(fisrtN, lastN);
return(0);
cout << "Prime is" answer; " ";
}