
一个强数是一个数字,其中各位数字的阶乘之和等于该数字本身。
示例
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程序:
在线演示
#includeint 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 : 145145 is a strong numberRun 2:Enter a number : 2525 is not a strong number
以上就是C程序用于判断给定的数字是否为强数的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1444744.html
微信扫一扫
支付宝扫一扫