Pagini recente » Cod sursa (job #1746102) | Cod sursa (job #2851527) | Cod sursa (job #1187236) | Cod sursa (job #1262892) | Cod sursa (job #84339)
Cod sursa(job #84339)
#include<stdio.h>
int main()
{
int A,B,d,i,prim,prim1,bun=1;
long long n,n1,p=1,div[1000000];
FILE *f=fopen("numere2.in","r");
fscanf(f,"%lli",&n);
n1=n;
if(n!=1)
{
for(i=0;i<1000000;i++)
div[i]=0;
for(d=2;n>1;d++)
{
while(n%d==0)
{
n/=d;
div[d]++;
}
}
for(i=0;i<d;i++)
if(div[i]!=0)
{
prim1=i;
prim=i;
p=prim;
break;
}
for(i=prim1+1;i<d;i++)
{
if(div[i]!=0 && div[prim]==div[i])
{
prim=i;
p*=i;
}
else if(div[i]!=0)
{
bun=0;
break;
}
}
fclose(f);
f=fopen("numere2.out","w");
if(bun==0)
fprintf(f,"%lli\n%c",n1,'1');
else
fprintf(f,"%lli\n%i",p,div[prim1]);
fclose(f);
}
else {f=fopen("numere2.out","w");fprintf(f,"%c\n%c",'1','1');}
}