Pagini recente » Cod sursa (job #984711) | Cod sursa (job #1448521) | Cod sursa (job #1244036) | Cod sursa (job #1793705) | Cod sursa (job #1244004)
#include <stdio.h>
struct tort {
int p,q;
};
int lnko(int a, int b) {
while (a!=b)
if (a>b)
a=a-b;
else b=b-a;
return a;
}
bool keres(struct tort e, struct tort g[], int h) {
int i; bool ok=false;
for (i=0; i<h; ++i)
if ((e.p=g[i].p) && (e.q=g[i].q))
ok=true;
return ok;
}
int main() {
struct tort t[1000],z;
int n,i,j,k,r=0,u;
FILE *f;
f=fopen("fractii.in","r");
fscanf(f,"%d",&n);
fclose(f);
for (i=1; i<=n; i++) {
z.p=i;
for (j=1; j<=n; j++) {
z.q=j;
u=lnko(z.p,z.q);
z.p=z.p/u; z.q=z.q/u;
if ((keres(z,t,r)==false) || (r==0)) {
r++;
t[r-1]=z;
}
}
}
f=fopen("fractii.out","w");
fprintf(f,"%d",r);
fclose(f);
}