因此,对于C ++中一个非常愚蠢的项目,我们正在制作自己的长整数类,称为VLI(超长整数)。它的工作方式(他们支配了它,将其归咎于愚蠢)是这样的:


用户最多输入50位数字,并以字符串形式输入。
字符串存储在预制的Sequence类中,该类以相反的顺序将字符串存储在数组中。


这意味着,当输入“ 1234”时,将其存储为[4 | 3 | 2 | 1]。

因此,我的问题是:我该如何仅使用这些字符数组进行除法?

如果输入的答案超过32位数字,则我不能使用int来检查内容,他们基本上说在这里使用long int就是作弊。

欢迎您提出任何意见,如有需要,我可以进一步澄清,谢谢大家。

最佳答案

实施您在小学学习的长除法算法。

首先执行减法。创建一个可以从输入中减去任何数字的函数。然后,您应该能够检测结果是否为负。修改此函数以允许在减去之前对数字进行字符串移位。

关于c++ - 自定义“非常长整数”部门问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2525172/

10-11 06:29