Pagini recente » Cod sursa (job #2827516) | Cod sursa (job #2628899) | Cod sursa (job #366416) | Cod sursa (job #10142) | Cod sursa (job #378157)
Cod sursa(job #378157)
#include<stdio.h>
int n,i,j,fractii,count,k,p,sgn[100],prel[100],final;
int main(){
int prim[100];
prim[0]=2;
prim[1]=3;
prim[2]=5;
prim[3]=7;
prim[4]=11;
prim[5]=13;
prim[6]=17;
prim[7]=19;
prim[8]=23;
prim[9]=29;
FILE *fin;
fin=fopen("fractii.in","rt");
fscanf(fin,"%d",&n);
fractii=n*n;
printf("%d",fractii);
for(i=2;i<=n;i++){
printf("\n%d:",i);
count=0;
for(j=0;j<100;j++)
{
sgn[j]=0;prel[j]=0;
}
for(j=0;j<10;j++)
if(i%prim[j]==0){
sgn[count]=-1;
prel[count]=prim[j];
count++;
}
printf("%d\n",count);
final=count;
if(count>=2){
for(j=0;j<count;j++)
for(k=j+1;k<count;k++){
prel[final]=prel[j]*prel[k];
sgn[count]=1;
final++;
}
}
if(count==3){
prel[final]=prel[1]*prel[2]*prel[0];
sgn[count]=-1;
final++;
}
for(j=0;j<final;j++)
fractii=fractii+(n/prel[j])*sgn[j];
}
FILE *fout;
fout=fopen("fractii.out","wt");
fprintf(fout,"%d",fractii);
return 0;
}