Cod sursa(job #146230)

Utilizator recviemAlexandru Pana recviem Data 1 martie 2008 14:04:25
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
// Ciur

#include "stdio.h"
    int n,nr=0;
    bool ciur[2000001];

void scrie(int x)
{
    if (x>1 && n<1000)
    {
        if (!ciur[x])
        {
            n++;
            scrie(x-1);
            printf("%d ",x);
        }
        else
            scrie(x-1);
    }
}

int main()
{
    freopen("ciur.in","r",stdin);
    scanf("%d",&n);
    fclose(stdin);

    for (int i=1;i<=n;i++)
        ciur[i]=0;

    for (int i=2;i<n;++i)
    if (!ciur[i])
        for (int j=i*2;j<=n;j+=i)
            ciur[j]=1;

    scrie(n);
    /*for (int i=n;i>1 && nr < 1000; --i)
    {
        if (!ciur[i])
        {
            printf("%d ",i);
            nr ++;
        }

    } */
    return 0;
}