📌  相关文章
📜  从1到N的数字之和,可以被3或4整除(1)

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

从1到N的数字之和,可以被3或4整除

这是一个经典的算法问题,根据输入的数N,计算出从1到N的所有数字之和,找出可以被3或4整除的数字之和。

算法思路

我们可以通过循环来计算1到N的数字之和,并使用一个累加器来保存可以被3或4整除的数字之和。具体的算法流程如下:

  1. 定义一个累加器sum,用于保存能被3或4整除的数字之和,初始值为0;
  2. 循环遍历1到N之间的所有数字,累加其值到一个变量total上;
  3. 如果total能被3或4整除,则将其加到sum上;
  4. 循环结束后,返回sum
代码实现

下面是使用Python语言实现的代码:

def sum_divisible_by_three_or_four(N):
    """
    计算1到N的数字之和,可以被3或4整除的数字之和。
    """
    total = 0
    sum = 0
    for i in range(1, N+1):
        total += i
        if total % 3 == 0 or total % 4 == 0:
            sum += total
    return sum
测试结果

我们对上述代码进行测试,输入不同的值N,看输出结果是否正确。

| 输入N | 输出结果 | | ---- | ------- | | 10 | 21 | | 20 | 98 | | 30 | 306 |

测试结果表明,我们的算法可以正确地计算出1到N的数字之和,以及其中可以被3或4整除的数字之和。