编写一个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 span number\n",temp);

else

   printf("%d is not a span number\n",temp);

示例

以下是C程序,以查找给定的数字是否强-

#include<stdio.h>

int main(){

   int n,i;

   int fact,rem;

   printf("\nEnter a number : ");

   scanf("%d",&n);

   printf("\n");

   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 span number\n",temp);

   else

      printf("%d is not a span number\n",temp);

   return 0;

}

输出结果

执行以上程序后,将产生以下结果-

Run 1:

Enter a number : 145

145 is a span number

Run 2:

Enter a number : 25

25 is not a span number

以上是 编写一个C程序来查找给定的数字是否强 的全部内容, 来源链接: utcz.com/z/342664.html

回到顶部