Найти все простые числа в интервале от 1 до N. Проблема в выводе. C++
Не могу понять, где ошибка в коде, так как при вводе любого числа (например, 10) выдаются только 1, 2, 3, при том, что в этом диапазоне простыми являются еще и 5, 7. Помогите найти ошибку, пожалуйста.
using namespace std;
int main() {
double N;
cout << "Enter a number N: "; cin >> N;
bool isPrime = true;
for (int i = 1; i <= N; i++) {
for (int j = 2; j * j <= i; j++) {
if (i % j == 0) {
isPrime = false;
break;
}
}
if (isPrime) cout << i << " is prime number\n";
}
}
Источник: Stack Overflow на русском