Pagini recente » Cod sursa (job #403596) | Cod sursa (job #3139233) | Cod sursa (job #2816970) | Cod sursa (job #148131) | Cod sursa (job #37997)
Cod sursa(job #37997)
#include <stdio.h>
#include <math.h>
FILE *f;
int a[1000002],v[1000002];long long l,i,z,n,s,d,j;char c;
int main()
{f=fopen("next.in","r");fscanf(f,"%c",&c);
while(c!='\n'){a[n++]=c-48;fscanf(f,"%c",&c);}
fscanf(f,"%Ld",&d);fclose(f);
for(i=0;i<n;i++)
{s=s*10+a[i];z=0;
if(s>=d){v[++l]=s/d;s=s%d;z=1;}}
i=l;ss=1;if(!z)l++;
for(i=1;i<=n;i++)a[i]=0;
for(i=1;i<=l/2;i++){z=v[i];v[i]=v[l-i+1];v[l-i+1]=z;}i=1;
if(s)while(v[i]==9){v[i]=0;i++;}v[i]++;if(i>l)l=i;s=0;n=l;
for(i=1;i<=l;i++)
{s=((v[i])*d)/10;v[i]=((v[i])*d)%10;
for(j=i+1;s;j++){a[j]+=s%10;s/=10;}if(j>n)n=j-1;}
f=fopen("next.out","w");for(i=1;i<=n;i++)fprintf(f,"%d",v[i]+a[i]);fclose(f);
return 0;
}