📜  检查较大的数字是否可被36整除(1)

📅  最后修改于: 2023-12-03 15:40:36.795000             🧑  作者: Mango

检查较大的数字是否可被36整除

在计算机编程中,我们经常需要检查一个较大的数字是否能够被某个特定的数整除,例如这里我们需要检查一个数字是否能够被36整除。

解决方法
  1. 最简单的做法是将这个数字转换为字符串,然后按位相加得到一个新的数字,最后检查这个新数字是否能够被36整除。
def is_divisible_by_36(n):
    tmp = str(n)
    s = 0
    for i in tmp:
        s += int(i)
    return s % 9 == 0 and '0' in tmp and n % 4 == 0

上述代码使用了字符串转换和按位相加的方法来计算这个数字,最后检查是否同时满足能够被9和4整除,以及是否包含数字0。如果全部成立,则说明这个数字能够被36整除。

  1. 另外一种方法是使用数字的性质来进行判断。我们知道,如果一个数字能够被36整除,那么它就同时能够被4和9整除。因此,我们考虑分别检查这两个条件是否成立。
def is_divisible_by_36(n):
    if n % 4 != 0:
        return False
    if sum(int(i) for i in str(n)) % 9 != 0:
        return False
    return True

上述代码首先检查这个数字能否被4整除,在满足这个条件的情况下,再检查它的各位数字之和能否被9整除。如果两个条件都成立,则说明这个数字能够被36整除。

总结

在本文中,我们介绍了两种不同的方法来检查一个较大的数字是否能够被36整除。这些解决方法需要掌握字符串转换、按位相加、整数取模等相关技能。在实际编程中,我们可以根据具体情况选择最适合的方法。