Pagini recente » Cod sursa (job #1466304) | Cod sursa (job #3231990) | Borderou de evaluare (job #2321818) | Cod sursa (job #3005601) | Cod sursa (job #1006379)
#include <fstream>
using namespace std;
int main()
{
//variabile ce va fi citita
unsigned int toRead;
//numarul ce va fi afisat in fisierul de iesire
unsigned int total = 0;
//pointer ce va servi drept loc pt alocarea memoriei
bool *ciur;
//fisiere de intrare + iesire
ifstream IN("ciur.in");
ofstream OUT("ciur.out");
//se citeste numarul din fisierul de intrare
IN >> toRead;
//memoria va fi alocata dinamic pt ciur
ciur = new bool[toRead]();
for (int i = 2; i <= toRead; i++)
{
//daca numarul nu este prim se sare peste el
if (ciur[i]) continue;
//daca numarul este prim va fi adaugat la total
if(!ciur[i])
{
total++;
}
for (int j = i; j <= toRead; j += i)
{
ciur[j] = true;
}
}
OUT << total << "\n";
delete [] ciur;
ciur = NULL;
return 0;
}