检查任意大数字是否能被 17 整除 - Python
假设,我们获得一个数字,并且我们必须检查该数字是否被 17 整除。
因此,如果输入类似于 99943,则输出将为可整除。
我们将使用重复减法法解决这个问题,我们将提取该数字的末尾数字并从数字中减去 5 次,直到我们得到一个可被 17 整除的两位数。
要解决此问题,我们将遵循以下步骤 −
- 当数字可被 100 整除时,执行
- last_digit := number mod 10
- number := number 除以 10 的向下取整值
- number := number - last_digit * 5
- 如果 number mod 17 与 0 相同,则返回 true。
让我们查看以下实现以获得更好的理解 −
范例
def solve(number) : while(number // 100) : last_digit = number % 10 number //= 10 number -= last_digit * 5 return (number % 17 == 0) number = 99943 if solve(number) : print("Divisible") else : print("Not Divisible")
输入
99943
输出
Divisible
广告