Помогите найти ошибку. Задание на считывание данных из txt файла и заполнение им массива, и после этого вывод простых чисел

Всем доброго времени суток! Написал программу, которая считывает числа из txt файла и заносит их в массив, потом из этих чисел он выбирает простые и выводит их. Но он не всегда выводит только простые числа, например если я введу в txt 8, то он выводит и ее. Буду очень признателен если вы мне поможете, заранее огромное спасибо!

#include <fstream>  
#include <cmath>

using namespace std;

int main()
{
    ifstream fin("input.txt");  
    //ofstream fout("output.txt");   
    int N, k;
    int A[1000]; 
    if (!fin.good())  
    {
        cout << "Error!" << endl;
    }
    else
    {
        k = 0;
        while (fin >> N)    
        {
            A[k++] = N;
        }
        cout << "Massive:" << endl;
        for (int i = 0; i < k; i++)  
        {
            cout << A[i] << " ";
        }
        for (int i = 2; i < A[i]; i++) 
        {
            cout << A[i];
        }
        return 0;
    }
    fin.close();  
    //fout.close();
    cin.get();
    
}

Ответы (0 шт):