Cod sursa(job #1149879)

Utilizator AlexandraMafteiAlexandra Maftei AlexandraMaftei Data 22 martie 2014 13:01:52
Problema Ciurul lui Eratosthenes Scor 30
Compilator c Status done
Runda Arhiva educationala Marime 0.65 kb
# include <stdio.h>

int main (){
    FILE *fin,*fout;
    int x,n,pp,cate,d,i;

    fin=fopen("ciur.in","r");
    fscanf(fin,"%d",&n);

    pp=1;       //presupun ca numarul este prim
    cate=0;
    for(i=3;i<=n;i+=2){
        pp=1;       //presupun ca numarul este prim
        if(i%2==0 && i!=2)      //daca numarul este par si diferit de 2 nu e prim
            pp=0;
        else
            for(d=3;d*d<=i;d+=2)
                if(i%d==0)
                    pp=0;
        if(pp==1)
            cate++;
    }

    fclose(fin);

    fout=fopen("ciur.out","w");
    fprintf(fout,"%d",cate+1);
    fclose(fout);

    return 0;
}