输入整数 n(n<50),求从 n 开始的前 2 个完数,以下程序有一处错误,试改正
再每次计算完之后,需要将s重新初始化为0。
#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
if __name__ == '__main__':
i = 30
g = 0
s = 0
while g < 2:
for j in range(1, i):
if i % j == 0:
s = s + j
if s == i:
print(i)
g = g + 1
s = 0
i = i + 1
调试了下,需要先初始化s为0,哈哈做的慢了一点
i = int(input("n="))
g = 0
s = 0
while g < 2:
s = 0
for j in range(1,i):
if i%j == 0:
s = s+j
if s == i:
print(i)
g = g + 1
i = i + 1
i = int(input("n = "))
g = 0
while g < 2:
s = 0
for j in range(1,i):
if i%j == 0:
s = s+j
if s == i:
print(i)
g = g + 1
i = i + 1
如有用请采纳
望采纳
i = int(input("n="))
g = 0
while g < 2:
s = 0
for j in range(1,i):
if i%j == 0:
s = s + j
if s == i:
print(i)
g += 1
i += 1