#include <bits/stdc++.h>
using namespace std;

bool asal_mi(int n) {
    // 2'den küçük sayılar için.
    if (n <= 1)
        return false;

    for (int i = 2; i * i <= n; i++) {
        // 2'den kök(n)'e kadarki herhangi bir sayıya bölünebiliyorsa n asal değildir.
        // Burada ilk böleni bulduğumuz an direkt false döndürdüğümüz için aslında
        // biraz daha optimize oluyor. Hep kök(n)'e kadar ilerleseydik daha uzun sürerdi.
        if (n % i == 0)
            return false;
    }

    // Yoksa asaldır.
    return true;
}

int main() {
    int n = 10'000'000;

    int asal_sayisi = 0;
    for (int sayi = 1; sayi <= n; sayi++) {
        asal_sayisi += asal_mi(sayi);
    }

    cout << "1'den " << n << "'e kadar " << asal_sayisi << " adet asal sayi var."
         << "\n";
}