Проблема состоит в том, чтобы решить это.
Основными множителями 13195 являются 5, 7, 13 и 29. Каков наибольший простой множитель числа 600851475143?
Я написал этот код
#include <iostream>
#include <math.h>
using namespace std;
bool prime(long int a);
int main()
{
long int b = 600851475143/2;
long int k;
for(long int i = 1; i <= b ; i++)
{
if(b % i == 0 && prime(i) == true)
{
k = i;
}
}
cout << k << endl;
return 0;
}
bool prime(long int a)
{
bool p = true;
for(long int i = 2; i <= sqrt(a) && p == true ; i++)
if(a % i == 0) p = false;
return p;
}
и когда я выполняю после сборки, он открывает консоль и ничего не показывает