Cod sursa(job #2978602)

Utilizator stefanrotaruRotaru Stefan-Florin stefanrotaru Data 13 februarie 2023 22:18:40
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;

int n, nrprime;

ifstream f ("ciur.in");
ofstream g ("ciur.out");

int ciur(int n)
{
    if (n == 0 || n == 1) {
        return 0;
    }
    else if (n != 2 && n % 2 == 0) {
        return 0;
    }

    for (int d = 3; d * d <= n; d += 2) {
        if (n % d == 0) {
            return 0;
        }
    }

    return 1;
}

int main()
{
    f >> n;

    for (int i = 2; i <= n; ++i) {
        if (ciur(i) == 1) {
            nrprime++;
        }
    }

    g << nrprime;

    g.close();

    return 0;
}