检查数字 N 的各位数字之和是否能整除它
数字 N 是一种特殊的整数类型,它计算个位数的和。因此,这个和将能被它本身整除。
让我们来看一个例子。
给定的整数,N = 36
各位数字之和,3 + 6 = 9
因此,36 可以被 9 整除,验证了 N 能被其各位数字之和整除。
算法
以下步骤:
步骤 1:我们首先声明头文件 iostream。
步骤 2:常用匹配:
然后使用函数定义 `digit_sum()`,它接受一个整型变量 n 作为参数来计算各位数字之和。[示例 1]
在示例 2 中,逻辑部分相同,只是函数定义的名称不同,即 `sum_of_digits`。[示例 2]
步骤 3:函数将变量 sum 初始化为 0,用于跟踪各位数字之和。
步骤 4:程序使用 while 循环,条件设置为 n > 0。如果 n 值大于 0,则继续执行循环内部的代码。然后使用运算符 % 和 /= 计算各位数字之和的验证。
步骤 5:函数简单地返回变量 sum,其中包含个位数之和的计算结果。
步骤 6:然后它将使用另一个函数定义 `check_divisibility_of_digit()`,它接受变量 n 作为参数,并通过引用调用 `digit_sum()` 函数以及一些运算符来返回函数。[示例 1]
步骤 7:现在开始主函数,并初始化变量 N 以设置整数的值。
步骤 8
接下来,它使用 if-else 语句调用函数来检查给定数字的各位数字之和是否能被自身整除。[示例 1]
接下来,它将在变量 sum 中使用调用函数 `sum_of_digits()`。然后 sum 将在 if-else 语句中用于检查各位数字之和是否能被自身整除。[示例 2]
示例
程序使用 while 循环计算各位数字之和,而 if-else 语句将用于使用调用函数设置条件。通过这种方式,它将检查数字 N 的各位数字之和是否能整除它本身。
#include <iostream> using namespace std; // This function is used to calculate the sum of the digit int digit_sum(int n) { int sum = 0; while (n > 0) { sum += n % 10; n /= 10; } return sum; } // taking function reference in the return statement bool check_divisibility_of_digit(int n) { return n % digit_sum(n) == 0; } // Start the main function int main() { int n = 48; if (check_divisibility_of_digit(n)) { cout << "The given number is divisible by its sum" << endl; } else { cout << "The given number not divisible by its sum" << endl; } return 0; }
输出
The given number is divisible by its sum
示例
在下面的示例中,我们将使用简单的 while 循环来设置各位数字之和的计算操作。在主函数中,它使用调用函数和 if-else 语句来设置特定条件和操作以获得结果。
#include <iostream> using namespace std; // recursive function int sum_of_digits(int n) { int sum = 0; while (n > 0) { int digit = n % 10; sum += digit; n /= 10; } return sum; } // Start the main function int main() { int n = 42; // Calling function int sum = sum_of_digits(n); if (n % sum == 0) { cout << "The given input of sum is satisfied for division." << endl; } else { cout << "The given input of sum is not satisfied for division." << endl; } return 0; }
输出
The given input of sum is satisfied for division.
结论
各位数字之和是指其数字相加之和能被自身整除的数字。程序使用简单的 while 循环迭代输入数字 N 以找到总和。之后,它在主函数中使用一些运算符,例如取模 (%) 和等于 (==),在 if-else 语句中进行特定的操作。