首页 > 试题

3的阶乘

更新时间:2022-11-14 03:17:17 阅读: 评论:0

教师一般去哪里下载课件-亡羊补牢的寓意


2022年11月14日发(作者:儿童孤独症治疗)

阶乘和数(python3)

【问题描述】

⼀个正整数如果等于组成它的各位数字的阶乘之和,则该正整数称为阶乘和数。例如正整数145,1!+4!+5!等于145,因此145就是⼀个阶乘和数。输⼊⼀个正整

数,计算它的各位数字的阶乘之和,并判断它是否是⼀个阶乘和数。注意:输⼊的正整数,以及组成它的各位数字的阶乘之和都不会超过int类型的表⽰范围,

并且输⼊的正整数的最⾼位不为0。

【输⼊形式】

从控制台输⼊⼀个正整数。

【输出形式】

先输出输⼊的正整数和⼀个逗号",",并从个位开始输出组成该正整数的各位数字的阶乘(阶乘计算结果)相加的形式,然后输出等号"="和各位数字阶乘之和,

最后在下⼀⾏输出字符串"Yes"表⽰该正整数是阶乘和数,否则输出字符串"No"表⽰该正整数不是阶乘和数。

【输⼊样例1】

145

【输出样例1】

145,120+24+1=145

Yes

【输⼊样例2】

1400

【输出样例2】

1400,1+1+24+1=27

No

【输⼊样例3】

4

【输出样例3】

4,24=24

No

【样例说明】

样例1中输⼊的正整数为145,其个位为5,5的阶乘为120,⼗位为4,4的阶乘为24,百位为1,1的阶乘为1,这些阶乘之和为145,所

以145为阶乘和数。样例2中输⼊的正整数为1400,组成它的各位数字的阶乘之和为27,所以1400不是阶乘和数。样例3中输⼊的正整

数为4,组成它的只有⼀位数字,其阶乘为24,也不是阶乘和数。

【代码】

```py

deff(n):

sum=1

foriinrange(1,n+1):

sum*=i

returnsum

if__name__=='__main__':

n=input()

l=list(n)

e()

n=int(n)

sum=0

print("%d,"%n,end='')

foriinrange(len(l)):

l[i]=f(int(l[i]))

sum+=l[i]

ifi==0:

print("%d"%l[i],end='')

el:

print("+%d"%l[i],end='')

print("=%d"%sum)

ifn==sum:

print("Yes")

el:

print("No")

本文发布于:2022-11-14 03:17:17,感谢您对本站的认可!

本文链接:http://www.wtabcd.cn/fanwen/fan/88/15030.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:十万英语
标签:3的阶乘
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图