首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何对“超长”整数进行乘法除法?

如何对“超长”整数进行乘法除法?
EN

Stack Overflow用户
提问于 2013-03-26 05:31:10
回答 2查看 2.1K关注 0票数 1

考虑到需要处理可能有数百位数的整数。让我们称它们为“超长”整数。显然,它们不能使用诸如int或long int之类的数据类型来存储。一个“超长”整数可以作为输入从用户读取,一个数字的数字,并存储在一个数组中,每一个数字的超长整数占据一个位置在数组中。这个问题涉及到两个正的“超长”整数作为用户的输入,一个数字一个数字。每个数字都由用户作为字符输入。正数“超长”整数的结尾由$符号的输入和存储表示。

在这里,您可以假设正数超长整数所占的最大位数是25位。

编写一个C程序,它能够对这些正的超长整数执行以下操作。

  1. 添加两个正超长整数
  2. 从另一个超长正整数中减去一个正超长整数
  3. 乘两个正超长整数
  4. 一个正超长整数除以另一个超长正整数
  5. 提供一个正超长整数除以另一个超长整数的除法的剩余部分。
  6. 求两个正超长整数的最大值

我已经完成了用于执行加法、减法和最大两个超长正整数的写入函数。我不能执行乘法和除法来分别得到商和余数。

EN

回答 2

Stack Overflow用户

发布于 2013-03-26 05:37:41

如果你不能编写自己的功能,你只需要使用GMP库,

http://gmplib.org/

使用它,你就会被分类..。

票数 1
EN

Stack Overflow用户

发布于 2013-03-26 06:55:29

所有表达式的结果都是非常大的数字,超出了偶数、长整数或长双的范围。您必须使用数组将这么大的数字存储在c中。您必须使用相同的逻辑,即我们用来乘两个数字,除了将数据存储到数组中的普通变量中。

下面是一些参考链接:

http://www.cquestions.com/2010/08/multiplication-of-large-numbers-in-c.html

http://www.cquestions.com/2010/08/division-of-large-numbers-in-c.html

http://www.thinbasic.com/community/showthread.php?11206-C-multiplying-big-integers

http://cboard.cprogramming.com/c-programming/114679-multiplying-huge-numbers-integer-arrays.html

Extremely big integer multiplication and addition

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15630033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档