Cod sursa(job #942936)
| Utilizator | Data | 23 aprilie 2013 21:06:58 | |
|---|---|---|---|
| Problema | Fractii | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 1.05 kb |
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("fractii.in");
ofstream g("fractii.out");
inline int cmmdc (int a,int b)
{
int r;
r=a%b;
while(r)
{
a=b;
b=r;
r=a%b;
}
return b;
}
void fractii ()
{
int n, q=1, p=1, k=0, pp, qq;
cin>>n;
pp=1;
qq=1;
while(p<=n && q<=n)
{
if(cmmdc (pp,qq)==1)
{
if(q!=n)
{
++q;
++k;
qq=q;
}
else if(q==n)
{
++p;
q=1;
pp=p; qq=1;
++k;
}
}
else if(cmmdc(pp,qq)!=1)
{
if(q!=n)
{
++q;
qq=q;
}
else if(q==n)
{
++p;
pp=p;
q=1;
qq=q;
}
}
}
cout<<k;
}
int main ()
{
fractii ();
}
