前言:
眼前小伙伴们对“编写程序求1000以内的所有完数”大体比较关切,我们都想要了解一些“编写程序求1000以内的所有完数”的相关资讯。那么小编也在网摘上网罗了一些关于“编写程序求1000以内的所有完数””的相关内容,希望我们能喜欢,兄弟们快快来了解一下吧!完美数(Perfect number),又称完全数或完备数,指的是一个正整数,它所有的真因子(即除了自身以外的约数)之和,恰好等于它本身。
例如:6,除了自身之外的约数是1、2、3。
6=1+2+3
6是一个完美数。
方法1:使用for循环中查找完美数
第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=0 for i in range(1,m): if m%i==0: sum=sum+i return 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+i i=i+1if sum==n: print(f"{n}是一个完美数。")else: print(f"{n}不是一个完美数。")for n in range(1,1001): sum=0 for i in range(1,n): if n%i==0: sum=sum+i if 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}不是一个完美数。")
文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈!
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #编写程序求1000以内的所有完数