Pagini recente » Cod sursa (job #2157782) | Cod sursa (job #1066623) | Cod sursa (job #110555) | Cod sursa (job #1560023) | Cod sursa (job #1929222)
#include <bits/stdc++.h>
#define nmax 1000000
using namespace std;
int n;
bitset<1000001>a;
void Ciur(int n)
{
int i, j;
a[1]=1;
for(i = 4; i <= n; i += 2)a[i] = 1;
for(i = 3; i * i <=n; i = i + 2)
if(a[i] == 0)
for(j = i * i; j <= n; j = j + 2 * i)a[j] = 1;
}
void Citire()
{
ifstream in("fractii.in");
in >> n;
in.close();
}
int Cmmdc(int p, int q)
{
int r;
while(q != 0)
{
r = p % q;
p = q;
q = r;
}
return p;
}
int main()
{
Citire();
Ciur(nmax);
int p, q, f;
f = 2 * n - 1;
ofstream out("fractii.out");
for(p = 2; p <= n; p++)
for(q = 2; q < p; q++)
if(a[p] == 0 || Cmmdc(p, q) == 1)
f += 2;
out << f << "\n";
out.close();
return 0;
}