Как найти простые множители числа в с ++?

Я пытаюсь ответить на вопрос 3 проекта Эйлера, и я неполучить желаемый результат. Моя логика:

Перечислите все факторы числа 13195 и сохраните их в массиве.Проверьте, является ли каждое число в массиве простым числом.Если число найдено простым, сохраните его в другом массиве.отобразить содержимое второго массива.Надеюсь, что он содержит только основные факторы.

РЕЗУЛЬТАТ: первый массив содержит все факторы, как и ожидалось, второй, я думаю, дублирует первый массив или проскальзывает в некоторых не простых числах, пожалуйста, помогите! :)

Мой код:

#include 

using namespace std;

long int x,y=2;
long int number=13195;
long int f[1000000],ff[1000000];
int st=1;
int open=0;
int open2=0;
int a=0;
bool isprime;

int main()
{

    for(x=1;x

Ответы на вопрос(2)

Ваш ответ на вопрос