Cod sursa(job #1301635)

Utilizator alex_gabAlex Dragoi alex_gab Data 26 decembrie 2014 11:33:58
Problema Ciurul lui Eratosthenes Scor 30
Compilator c Status done
Runda Arhiva educationala Marime 0.67 kb
#include <stdio.h>

const char *IN_FILE_NAME = "ciur.in";
const char *OUT_FILE_NAME = "ciur.out";

FILE *inputFile, *outputFile;

int main(int argc, char *argv[]) {
    inputFile = fopen(IN_FILE_NAME, "r");

    int size;
    fscanf(inputFile, "%d", &size);

    int n = size;
    int i, p, cont = 0;
    int prim[n + 1];
    for (p = 2; p <= n; p++) prim[p] = 1;
    for (p = 2; p <= n; p++) {
        if (prim[p]) {
            cont++;
            for (i = 1; i <= n / p; i++) prim[p * i] = 0;
        }
    }

    outputFile = fopen(OUT_FILE_NAME, "w");
    fprintf(outputFile, "%d", cont);

    fclose(inputFile);
    fclose(outputFile);
    return 0;
}