编程打卡:C语言趣味编程习题做
完数
问题描述
完数是因子相加等于它本身的数字,求一个范围内的完数。
设计思路
遍历这个范围内的数字,求它的因子,然后判断是否为完数即可。
流程图
graph A[开始]-->B[inputN,i=2]-->C{i<=N}--Yes-->D[j=1,sum=0]-->E{j<=i/2}--Yes-->F{i%j==0}--Yes-->G[sum+=i]-->E; E--No-->H{sum==i}--Yes-->I["print(i)"]-->C; H--No-->C; C--No-->J[结束];代码实现
n = int(input())
for i in range(2,n+1):
sum = 0
for j in range(1,i//2+1):
if i%j==0:
sum += j
if sum==i:
print(i)
运行结果
输入
1000
输出
6
28
496
标签:--,sum,编程,完数,打卡,习题
From: https://www.cnblogs.com/sugar-refinery/p/17341538.html