NTP Asked:2020-02-18 19:03:28 +0000 UTC2020-02-18 19:03:28 +0000 UTC 2020-02-18 19:03:28 +0000 UTC 查找超出整数类型的数字的余数 772 有一个数字超出范围int64,所以我将它存储在一个字符串中,我需要将它除以范围内的数字int64并得到余数,余数也会在范围内int64,如何实现这样的除法? алгоритм 1 个回答 Voted Best Answer Harry 2020-02-18T19:25:46Z2020-02-18T19:25:46Z 当两个数字相加时,除法的余数(所谓的“模”)相加。相乘时,余数相乘 - 自己判断:让第一个数字除以 d 时,余数为 1,即 它的形式为 = kd + r1,第二个 = nd + r2,相乘时将是 (...) * d + r1 * r2 所以你只需要分成小部分,然后开始寻找对应的残差...... 举个例子还是想法已经很清楚了? 更新 假设存储值的最大大小为 1000,我们需要找到 123456 除以 21 的余数。我们将其写为: (12*100+34)*100+56 并用余数替换这些术语(所有术语都已经很小): (12*16+13)*16+14 => (192+13)*16+14 => (3+13)*16 + 14 => 256 + 14 => 4+14 => 18 让我们检查... 123456 = 5878*21+18 这更清楚吗?
当两个数字相加时,除法的余数(所谓的“模”)相加。相乘时,余数相乘 - 自己判断:让第一个数字除以 d 时,余数为 1,即 它的形式为 = kd + r1,第二个 = nd + r2,相乘时将是 (...) * d + r1 * r2
所以你只需要分成小部分,然后开始寻找对应的残差......
举个例子还是想法已经很清楚了?
更新
假设存储值的最大大小为 1000,我们需要找到 123456 除以 21 的余数。我们将其写为:
并用余数替换这些术语(所有术语都已经很小):
让我们检查...
这更清楚吗?