在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 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短