完美数(Perfect number),又称完全数或完备数,指的是一个正整数,它所有的真因子(即除了自身以外的约数)之和,恰好等于它本身 。
文章插图
例如:6,除了自身之外的约数是1、2、3 。
6=1+2+3
6是一个完美数 。
方法1:使用for循环中查找完美数
文章插图
【英文数字1000以上的数字怎么读 英文数字一千以上写法】第1步:用变量n来存储用户输入的数字 。
第2步:变量sum来存储约数之和 。
第3步:使用for循环来迭代
第4步:if选择结构中,如果找到一个约数(能被i整除,i就是约数),然后将约数累加到sum计算总合 。
第5步:if选择结构判断,sum等于输入的数字n,则n是完美数 。
我们在以上程序添加另一个for循环,迭代1000之内的数字,我们可以找到1000内的完美数 。
文章插图
方法2:使用while循环查找完美数实现原理与上面示例相同 。
文章插图
方法3:自定义函数查找完美数实现原理与上面示例相同,自定义函数,返回约数之和 。
文章插图
文中涉及代码:
def perfect_numbers(m):sum=0for i in range(1,m):if m%i==0:sum=sum+ireturn sum n=int(input(\'请输入一个整数:\'))if n==perfect_numbers(n):print(f\"{n}是一个完美数 。\")else:print(f\"{n}不是一个完美数 。\")n=int(input(\'请输入一个整数:\'))i=1 sum=0 while i<n:if n%i==0:sum=sum+ii=i+1if sum==n:print(f\"{n}是一个完美数 。\")else:print(f\"{n}不是一个完美数 。\")for n in range(1,1001):sum=0for i in range(1,n):if n%i==0:sum=sum+iif sum==n:print(f\"{n}是一个完美数 。\")n=int(input(\'请输入一个整数:\'))sum=0 for i in range(1,n):if n%i==0:sum=sum+iif sum==n:print(f\"{n}是一个完美数 。\")else:print(f\"{n}不是一个完美数 。\")
文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友 。如有意见和建议,请在评论中反馈!- 罗马假日的故事概况 罗马假日的故事概况英文
- 2斤是多少克 2公斤是多少克
- 螺栓的强度等级划分 螺栓头部数字的含义
- 肖战数字事件是怎么回事 肖战227事件发生了什么
- 阿拉伯数字是哪个国家发明的 阿拉伯数字是哪国发明的为什么叫阿拉伯数字
- 7这个数字到底吉不吉利 7这个数字吉利吗-
- 2019年六一儿童节给老婆发多少微信红包 61红包数字含义大全
- 冰箱的温度数字越大越冷吗 冰箱1-7档对应的实际温度
- 沉迷于英文:如何摆脱对英语的过度依赖 沉迷于英文
- 大写一二三四五六七八大九十大写