Pagini recente » Monitorul de evaluare | Cod sursa (job #1130272) | Cod sursa (job #2970813) | Cod sursa (job #2734632) | Cod sursa (job #622736)
Cod sursa(job #622736)
#include<fstream>
using namespace std;
int n;
int cmmdc(int x,int i)
{
if(x==i)
return x;
if(x>i) return cmmdc(x-i,i);
if(x<i) return cmmdc(x,i-x);
}
int suma(int x)
{
int i,s=0;
for(i=2;i<=n;i++)
if(x%i!=0&&i%x!=0&&cmmdc(x,i)==1)
s++;
return s;
}
int main()
{
int i,s;
ifstream f("fractii.in");
ofstream g("fractii.out");
f>>n;
f.close();
s=2*n-1;
for(i=2;i<=n/2;i++)
s=s+2*suma(i);
if(n%2==0&&(n/2)%2!=0)
s=s+suma(n/2+1);
if(n%2!=0)
s=s+2*suma(n/2+1);
g<<s;
g.close();
return 0;
}