在C ++中检查数字是否为Krishnamurthy数字
在这里,我们将看到如何检查数字是否为Krishnamurty数字。如果每个数字的阶乘之和与该数字相同,则该数字为Krishnamurty数字。例如,如果数字为145,则sum=1!+4!+5!=1+24+120=145。所以这是一个Krishnamurty数,
逻辑很简单,我们必须找到每个数字的阶乘,然后求和,然后如果与给定数字相同,则该数字为Krishnamurty数字。让我们看一下代码以获得更好的主意。
示例
#include <iostream>
#include <cmath>>
using namespace std;
long factorial(int n){
if(n <= 1){
return 1;
}
return n * factorial(n - 1);
}
bool isKrishnamurty(int number) {
int temp = number;
int sum = 0;
while(number > 0){
sum += factorial(number % 10);
number /= 10;
}
if(sum == temp){
return true;
}
return false;
}
int main() {
int n = 145;
if(isKrishnamurty(n)){
cout << n << " is Krishnamurty Number";
} else {
cout << n << " is not Krishnamurty Number";
}
}输出结果
145 is Krishnamurty Number
热门推荐
10 接到英文简短老师祝福语
11 婆婆66岁祝福语简短
12 简短他人的生日祝福语
13 如果不结婚祝福语简短
14 写给老板祝福语简短高级
15 简短高大上的祝福语
16 难过生日祝福语简短
17 英文节日祝福语简短唯美
18 平安祝福语简短暖心