Pagini recente » Cod sursa (job #3144525) | Cod sursa (job #2822430) | Cod sursa (job #1444741) | Cod sursa (job #3215636) | Cod sursa (job #1111933)
//Infoarena. Arhiva Educationala. Ciurul lui Eratostene.
#include<iostream>
#include<fstream>
using namespace std;
void ciur1(int *,int,int &);
//void print(int *,int);
int main(){
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
bool A[2000000],n,ct;
cin>>n;
ciur1(A,n,ct);
cout<<ct;
}
void ciur1(int A[],int n,int &ct){
ct=0;
for(int i=0;i<=n;i++) *(A+i)=0;
for(int i=2;i<=n/2;i++){
for(int j=i+i;j<=n;j+=i){
*(A+j)=1;
}
if(*(A+i)==0) ct++;
}
for(int i=n/2+1;i<=n;i++){
if(*(A+i)==0) ct++;
}
}
/*
void print(int A[],int n){
for(int i=0;i<=n;i++){
cout<<*(A+i);
}
}
*/