Cod sursa(job #1170699)
Utilizator | Bosinta Alexandru alexandru822 | Data | 14 aprilie 2014 11:53:33 |
---|---|---|---|
Problema | Fractii | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.7 kb |
#include <fstream>
using namespace std;
int n;
int cmmdc(int a, int b){
while(a!=b){
if(a>b) a=a-b;
else b=b-a;
}
return a;
}
int prim(int a){
int j;
for(j=2; j*j<a && a%j!=0; j++);
if(j*j>a) return 0;
else return 1;
}
int main()
{
ofstream out("fractii.out");
ifstream in("fractii.in");
int nr=1, p, i, j, ci, cj, nra;
in>>n;
for(i=2; i<=n; i++){
nra=0;
p=prim(i);
if(p==0) nra=i-1;
else
for(j=1;j<i;j++){
ci=i;
cj=j;
p=cmmdc(ci,cj);
if(p==1) nra++;
}
nr+=2*nra;
}
out<<nr;
return 0;
}