Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<math.h>
  4.  
  5. int getCount(int a)
  6. {
  7. int c=0;
  8. while(a!=0)
  9. {
  10. a=a/10;
  11. c++;
  12. }
  13. return c;
  14. }
  15.  
  16. int getNumber(int a,int k)
  17. {
  18. int c=getCount(a)-k;
  19. while(c!=0)
  20. {
  21. a=a/10;
  22. c--;
  23. }
  24. return a;
  25. }
  26.  
  27. int soc(int a,int b)
  28. {
  29. int c=getCount(b);
  30. while(c!=0)
  31. {
  32. a=a*10;
  33. c--;
  34. }
  35. a+=b;
  36. return a;
  37. }
  38.  
  39. int ex(int a,int in)
  40. {
  41. int p=getCount(a);
  42. if(p<in) return -1;
  43. int c=getNumber(a,in);
  44. a=c%10;
  45. return a;
  46. }
  47.  
  48. int main()
  49. {
  50. int a=0;
  51. int k=0;
  52.  
  53. scanf("%i",&a);
  54. scanf("%i",&k);
  55.  
  56. int res =a/k;
  57.  
  58. //printf("%i",getNumber(a,k));
  59. //printf("%i",soc(a,k));
  60. //printf("%i",ex(a,k));
  61. printf(" %i\t|%i\n",a,k);
  62. printf("-\t---\n");
  63. printf(" %i\t|%i\n",(k*ex(res,1)),res);
  64. printf(" ---\n");
  65.  
  66. int a1=getNumber(a,(getCount(k*ex(res,1))))-k*ex(res,1),
  67. b=0,
  68. a2=a1,
  69. nspace=1,
  70. n1space=1;
  71. char space=' ';
  72.  
  73. for(int i=getCount(k*ex(res,1));i<=getCount(res);i++)
  74. {
  75. if(a2==0)
  76. {
  77. nspace++;
  78. n1space = nspace;
  79. }
  80. a1=soc((a1-b),ex(a,i+1));
  81. while(n1space!=0)
  82. {
  83. printf("%c",space);
  84. n1space--;
  85. }
  86. n1space=nspace;
  87. printf(" %i\n",a1);
  88. while(n1space!=0)
  89. {
  90. printf("%c",space);
  91. n1space--;
  92. }
  93. n1space = nspace;
  94. printf("-\n");
  95. b=k*ex(res,i);
  96. while(n1space!=0)
  97. {
  98. printf("%c",space);
  99. n1space--;
  100. }
  101. n1space = nspace;
  102. printf(" %i\n",b);
  103. while(n1space!=0)
  104. {
  105. printf("%c",space);
  106. n1space--;
  107. }
  108. printf(" ---\n");
  109. if(getCount(a1)>=getCount(a1-b)) nspace+=getCount(a1)-getCount(a1-b);
  110. a2=a1;
  111. n1space = nspace;
  112. }
  113. if((a1-b)==0) n1space--;
  114. while(n1space!=0)
  115. {
  116. printf("%c",space);
  117. n1space--;
  118. }
  119. printf(" %i\n",a1-b);
  120.  
  121. system("pause>0");
  122. return 0;
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement