C程序判断给定数字是否为强数
强数是指其各位数字阶乘之和等于自身。
示例
- 123!= 1!+2!+3!
=1+2+6 =9
这里,123 不是强数,因为各位数字阶乘之和不等于自身。
- 145!=1!+4!+5!
=1+24+120
=145
这里,145 是强数,因为各位数字阶乘之和等于自身。
我们用来判断给定数字是否为强数的逻辑如下:
while(n){
i = 1,fact = 1;
rem = n % 10;
while(i <= rem){
fact = fact * i;
i++;
}
sum = sum + fact;
n = n / 10;
}
if(sum == temp)
printf("%d is a strong number
",temp);
else
printf("%d is not a strong number
",temp);程序
以下是判断给定数字是否为强数的C程序:
#include<stdio.h>
int main(){
int n,i;
int fact,rem;
printf("
Enter a number : ");
scanf("%d",&n);
printf("
");
int sum = 0;
int temp = n;
while(n){
i = 1,fact = 1;
rem = n % 10;
while(i <= rem){
fact = fact * i;
i++;
}
sum = sum + fact;
n = n / 10;
}
if(sum == temp)
printf("%d is a strong number
",temp);
else
printf("%d is not a strong number
",temp);
return 0;
}输出
执行上述程序后,将产生以下结果:
Run 1: Enter a number : 145 145 is a strong number Run 2: Enter a number : 25 25 is not a strong number
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP