Pagini recente » Cod sursa (job #389313) | Cod sursa (job #2832903) | Cod sursa (job #2748317) | Cod sursa (job #2217903) | Cod sursa (job #39218)
Cod sursa(job #39218)
#include<stdio.h>
#include<string.h>
#define dim 1001
typedef int Huge[dim];
void scrie(Huge a);
long impartire(Huge a, long b);
void conversie(char s[dim], Huge a);
void mutare(Huge a, Huge c);
int main()
{
freopen("next.in","r",stdin);
freopen("next.out","w",stdout);
char s[dim];
Huge a,c;
long b,r;
scanf("%s", s);
conversie(s, a);
scanf("%ld", &b);
mutare(a,c);
impartire(a,b);
r=impartire(c,b);
scrie(a);
printf("%ld", r);
return 0;
}
void conversie(char s[dim], Huge a)
{
int i;
a[0]=strlen(s);
for(i=1; i<=a[0]; ++i)
a[i]=s[a[0]-i]-'0';
for(i=a[0]+1; i<=1000; ++i)
a[i]=0;
}
long impartire(Huge a, long b)
{
long r=0,i;
for(i=a[0]; i; --i)
{
r=10*r+a[i];
a[i]=r/b;
r%=b;
}
while(!a[a[0]] && a[0]>1)
--a[0];
return r;
}
void scrie(Huge a)
{
for(int i=a[0]; i; --i)
printf("%d", a[i]);
printf("\n");
}
void mutare(Huge a, Huge c)
{
int i;
for(i=1; i<=a[0]; ++i)
c[i]=a[i];
c[0]=a[0];
}