Cod sursa(job #201946)

Utilizator 7RaduRadu Antohi 7Radu Data 5 august 2008 10:11:11
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.79 kb
#include <iostream>
#include <fstream>
// Ciurul lui Erastotenes

using namespace std;

int main()
{
int n;
    
    ifstream f ("ciur.in");
    f>>n;
    f.close();
    
char b[1000000];
int i,j;

     for (i=1;i<=n;i++)
        if (i % 2 == 0)
         b[i] = '0';    
        else
           b[i] = '1'; 
         
         
         
     i=3;    
     while (i <= n/2)    
        {
           j=3;   
           while (j <= n/i)
           {
               b[i*j] = '0';
               j++;
               }
            i++;   
           }
      b[1] = 0;
      
long cont=1;      
       for (i=1;i<=n;i++)
           if (b[i] == '1') 
              cont+=1;

      ofstream g ("ciur.out");
      g<<cont<<"\n";
      g.close(); 
      return 0;
      }