Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<stdlib.h>
- #include<math.h>
- int getCount(int a)
- {
- int c=0;
- while(a!=0)
- {
- a=a/10;
- c++;
- }
- return c;
- }
- int getNumber(int a,int k)
- {
- int c=getCount(a)-k;
- while(c!=0)
- {
- a=a/10;
- c--;
- }
- return a;
- }
- int soc(int a,int b)
- {
- int c=getCount(b);
- while(c!=0)
- {
- a=a*10;
- c--;
- }
- a+=b;
- return a;
- }
- int ex(int a,int in)
- {
- int p=getCount(a);
- if(p<in) return -1;
- int c=getNumber(a,in);
- a=c%10;
- return a;
- }
- int main()
- {
- int a=0;
- int k=0;
- scanf("%i",&a);
- scanf("%i",&k);
- int res =a/k;
- //printf("%i",getNumber(a,k));
- //printf("%i",soc(a,k));
- //printf("%i",ex(a,k));
- printf(" %i\t|%i\n",a,k);
- printf("-\t---\n");
- printf(" %i\t|%i\n",(k*ex(res,1)),res);
- printf(" ---\n");
- int a1=getNumber(a,(getCount(k*ex(res,1))))-k*ex(res,1),
- b=0,
- a2=a1,
- nspace=1,
- n1space=1;
- char space=' ';
- for(int i=getCount(k*ex(res,1));i<=getCount(res);i++)
- {
- if(a2==0)
- {
- nspace++;
- n1space = nspace;
- }
- a1=soc((a1-b),ex(a,i+1));
- while(n1space!=0)
- {
- printf("%c",space);
- n1space--;
- }
- n1space=nspace;
- printf(" %i\n",a1);
- while(n1space!=0)
- {
- printf("%c",space);
- n1space--;
- }
- n1space = nspace;
- printf("-\n");
- b=k*ex(res,i);
- while(n1space!=0)
- {
- printf("%c",space);
- n1space--;
- }
- n1space = nspace;
- printf(" %i\n",b);
- while(n1space!=0)
- {
- printf("%c",space);
- n1space--;
- }
- printf(" ---\n");
- if(getCount(a1)>=getCount(a1-b)) nspace+=getCount(a1)-getCount(a1-b);
- a2=a1;
- n1space = nspace;
- }
- if((a1-b)==0) n1space--;
- while(n1space!=0)
- {
- printf("%c",space);
- n1space--;
- }
- printf(" %i\n",a1-b);
- system("pause>0");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement