In this tutorial, we will learn about the Peterson number and check if the number is Peterson or not in C.
What is Peterson Number?
A number is said to be a Peterson number if the sum of factorials of each digit of the number is equal to the number itself.
Peterson numbers examples:
Number = 145
145 = !1 + !4 + !5
= 1 + 4*3*2*1 + 5*4*3*2*1
= 1 + 24 + 120
= 145 = 145
Therefore, we can see that after the sum of the factorial of 145 is equal to the number 145 itself. Hence the Peterson Number.
C Program to check whether the number is Peterson Number or not
Peterson number program in C:
#include <stdio.h>
int main()
{
int num, temp, rem, sum = 0, fact = 1;
int i;
printf("Enter a number: ");
scanf("%d", &num);
temp = num;
while (temp != 0)
{
rem = temp % 10;
for (i = 1; i <= rem; i++)
fact *= i;
sum += fact;
fact = 1;
temp /= 10;
}
//display
if (num == sum)
printf("%d is a Peterson Number", num);
else
printf("%d is Not a Peterson Number", num);
return 0;
}
Output 1:
Enter a number: 145
145 is a Peterson number
Output 2:
Enter a number: 55
55 is not a Peterson number