假设我们有一个数字,我们必须检查这个数字是否能被 17 整除。
因此,如果输入像 99943,那么输出将是可整除的。
我们将使用重复减法来解决这个问题,我们提取数字的最后一位,然后从数字中减去 5 次,直到我们得到一个可以被 17 整除的两位数。
为了解决这个问题,我们将按照以下步骤操作 -
而 number 可以被 100 整除,做
last_digit := 数字模 10
number := (number 除以 10) 的底值
number := number - last_digit * 5
如果数字 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