【问题标题】:How can I do modular arithmetic with decimal values in Python?如何在 Python 中使用十进制值进行模运算?
【发布时间】:2017-03-09 01:56:42
【问题描述】:

说我想做类似的事情

9.9 % 13

正常的 python 模数会给我一个 9.9 的输出。有没有我可以导入的模块来代替我的输出 6(或更一般的整数值)?

【问题讨论】:

  • 为什么要给 6?如果您的意思是 9,那么只需在结果上调用 int...
  • 我只是快速地从here 复制了一个示例(诚然没有先检查它)。重要的是我希望它返回一个整数值。我的想法是 $9.9 \equiv 6 \bmod 13$。我正在编写婴儿步巨步算法的一个版本,我需要它来进行比较。

标签: python modular-arithmetic mod


【解决方案1】:

只要(99 mod 13 * inverse modulo ( 10, 13)) modulo 13

99 mod 13 = 8, inverse modulo (10,13) = 4

【讨论】:

    【解决方案2】:

    9.9 是唯一正确的答案。由于 9.9 小于 13,因此 9.9 是您请求的结果。要求一个为您提供整数输出的导入是不可能的,因为整数值是不可能的。无论您使用哪个模块。

    TL;DR:没有这样的模块。

    【讨论】:

      猜你喜欢
      • 2018-06-29
      • 2010-09-12
      • 2023-03-04
      • 2013-06-26
      • 2012-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多