在 Python 中检查任意大数是否能被 19 整除


假设,我们得到一个大数,需要检查该数是否能被 19 整除。

因此,如果输入是 86982,则输出将是“可被整除”。

我们将使用重复加法的方法解决此问题,其中我们从数字中提取最后一位数字,将其乘以 2,并将结果添加到剩余数字中,直到我们得到一个能被 19 整除的两位数。

为了解决这个问题,我们将遵循以下步骤:

  • 当数字可以被 100 整除时,执行以下操作
    • last_digit := number 模 10
    • number := number 除以 10 的向下取整
    • number := number + last_digit * 2
  • 如果 number 模 19 等于 0,则返回 True。

让我们看看下面的实现,以便更好地理解:

示例

 实时演示

def solve(number) :
   while(number // 100) :
      last_digit = number % 10
      number //= 10
      number += last_digit * 2
   return (number % 19 == 0)
number = 86982
if solve(number) :
   print("Divisible")
else :
   print("Not Divisible")

输入

86982

输出

Divisible

更新于: 2020-12-30

336 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.