Pagini recente » Cod sursa (job #889190) | Cod sursa (job #2821490) | Cod sursa (job #2648826) | Cod sursa (job #2330833) | Cod sursa (job #57833)
Cod sursa(job #57833)
#include<fstream.h>
#include<math.h>
long long int a[7700],b[8000],k;
int prim(int);
int main()
{ long long int n,i,j,d,c,e,f,z;
ifstream fin("fractii.in");
ofstream fout("fractii.out");
fin>>n;
e=0;
d=0;
for(i=1;i<=n;i++)
if(prim(i)) a[++e]=i;
for(i=2;i<=n;i++)
for(j=2;j<=e;j++)
{ f=0;
if(i%a[j]==0&&sqrt(i)!=(int)sqrt(i)) f=i/a[j];
if(prim(f)) z++;
}
for(i=1;i<=e;i++)
b[++d]=n/a[i];
for(i=1;i<=d;i++)
c+=pow(b[i],2);
fout<<pow(n,2)-c+z;
fin.close();
fout.close();
return 0;
}
int prim(int a)
{ if(a==1) return 0;
if(a==2||a==3) return 1;
if(a%2==0) return 0;
for(k=3;k*k<=a;k+=2)
if(a%k==0) return 0;
return 1;
}