我试图在C中实现长乘法(小学方法)。我需要编写我的程序在基地2^32。我不知道如何开始。我有我想在这里使用的算法:长乘C
for (i = 0; i < n; i++) {
carry = 0;
for (j = 0; j < n; j++) {
product = a[i] * b[j] + result[i + j] + carry;
result[i + j] = p % base;
carry = floor(product/base);
}
result[i + n] = carry;
}
任何提示的赞赏。我无法想出一个好主意。
基数2^32是什么意思? – isedev 2014-10-07 19:24:24
基本上,而不是像你通常会在基数10中处理数字。我的数字a和b由32位字“数字”的数组表示。每个“数字”的范围可以是0到2^32 - 1,而不是0到9,就像基数10一样。 – Chaz 2014-10-07 19:26:26
我想说,你需要做的就是看你的每个变量有多大,以及什么用于使用什么数据类型的手段。 – Degustaf 2014-10-07 19:49:19