大整数除法

港控/mmm° 2024-02-17 19:18 150阅读 0赞
  1. #include<cstdio>
  2. #include<iostream>
  3. #include<cstring>
  4. using namespace std;
  5. void bigchu(char *a,char *b,char *c,int& lc)
  6. {
  7. int la=strlen(a),lb=strlen(b),f1;
  8. int i=0;
  9. lc=0;
  10. while(i<=la-lb)
  11. {
  12. f1=0;
  13. c[lc]='0';
  14. while(1)
  15. {
  16. if(i==0||a[i-1]=='0')
  17. for(int j=i; j<i+lb; j++)
  18. {
  19. if(a[j]>b[j-i]) break;
  20. if(a[j]<b[j-i])
  21. {
  22. f1=1;
  23. break;
  24. }
  25. }
  26. if(f1) break;
  27. for(int j=lb-1; j>=0; j--)
  28. if(a[i+j]>=b[j])
  29. a[i+j]-=b[j]-'0';
  30. else a[i+j]+=10-b[j]+'0',a[i+j-1]--;
  31. c[lc]++;

发表评论

表情:
评论列表 (有 0 条评论,150人围观)

还没有评论,来说两句吧...

相关阅读