19):题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。

    

#!/usr/bin/python
# -*- coding: UTF-8 -*- from sys import stdout
for j in range(2,1001):
k = []
n = -1
s = j
for i in range(1,j):
if j % i == 0:
n += 1
s -= i
k.append(i) if s == 0:
print j
for i in range(n):
stdout.write(str(k[i]))
stdout.write(' ')
print k[n]

    以上实例输出结果为:

6
1 2 3
28
1 2 4 7 14
496
1 2 4 8 16 31 62 124 248
#!/usr/bin/env python
# -*- coding: utf-8 -*- for i in range(1, 1001):
sum = 0
for j in range(1, i):
if i % j == 0:
sum += j
if sum == i:
print(i)

    Python3 测试实例:

#!/usr/bin/python3

list2 = []
for x in range(1, 1001):
list1 = []
for i in range(1, int(x / 2) + 1):
if x % i == 0:
list1.append(i)
if x == sum(list1):
print(x)
print(list1)
list2.append(x)
print("共计有%d个完数"%(len(list2)))
#!/usr/bin/python
# -*- coding: UTF-8 -*-
__author__ = 'Arlene' def fun(num):
sum = 1 # 1要加上,所以默认赋值为1
for i in range(2, num): # 因子不包括本身,
if num % i == 0:
sum += i
if sum == num:
return num
result = []
for num in range(2, 1000):
test = fun(num)
if test: # 去掉空值
result.append(test)
print("完数有:", result)
#!/usr/bin/env python

for i in range(1,1001):
s = 0
L = []
for x in range(1,int((i+3)/2)):
if i % x == 0:
s += x
L.append(x)
if i == s:
print(i)
print(L)
#!/usr/bin/env python
# -*- coding: utf-8 -*- l = []
def num(n):
for i in range(1,n + 1):
if n != i and n % i == 0:
l.append(i)
return l for i in range(1,1001):
sum = 0
l = []
m = num(i)
if m == []:
pass
else:
for j in m:
sum += j
if i == sum:
print i
#!/usr/bin/env python
# -*- coding: utf-8 -*- list1 = []
for j in range(2, 10001):
l = [] for i in range(1, j//2+1):
if j % i == 0:
l.append(i)
if j == sum(l):
list1.append(j)
print("{}={}".format("+".join(map(str, l)), j))
#!/usr/bin/python
# -*- coding: UTF-8 -*- Sn = []
for i in range(2,1001):
for j in range(1,i):
if i % j == 0:
Sn.append(j)
if i == reduce(lambda x,y : x + y,Sn):
print i,Sn
Sn = []

    Python3 测试:

import functools

for num in range(1,1001):
savenum=int(num)
list1 = []
for idx in range(1,int(num)):
if num % idx == 0:
list1.append(idx)
if functools.reduce(lambda x,y:x+y,list1,0) == savenum:
print(savenum,list1)
import numpy as np

for m in range(1,1001):
n=[1]
for i in range(2,m):
if m % i == 0:
n.append(i)
if m == np.sum(n):
print m,n

有什么不懂得可以参考第十三个小例子。如果感觉不错的话,请多多点赞支持哦。。。

  原文链接:https://blog.csdn.net/luyaran/article/details/80063230

python2.7练习小例子(十八)的更多相关文章

  1. python2.7练习小例子(八)

        8):题目:输出 9*9 乘法口诀表.     程序分析:分行与列考虑,共9行9列,i控制行,j控制列.     程序源代码: #!/usr/bin/python # -*- coding: ...

  2. python2.7练习小例子(二十八)

    28):题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母.     程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母. ...

  3. python2.7练习小例子(十)

        10):古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?     程序分析:兔子的规律为数列1,1 ...

  4. python2.7练习小例子(二十九)

        29):1.题目:按相反的顺序输出列表的值. #!/usr/bin/python # -*- coding: UTF-8 -*- a = ['one', 'two', 'three'] for ...

  5. python2.7练习小例子(十二)

        12):题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个"水仙花数" ...

  6. python2.7练习小例子(二十四)

        24):1.题目:利用递归方法求5!.     程序分析:递归公式:fn=fn_1*4! #!/usr/bin/python # -*- coding: UTF-8 -*- def fact( ...

  7. python2.7练习小例子(十六)

    16):题目:输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数.     程序分析:利用 while 或 for 语句,条件为输入的字符不为 '\n'.     程序源代码: #!/u ...

  8. python2.7练习小例子(十五)

        15):题目:输出指定格式的日期.     程序分析:使用 datetime 模块.     程序源代码: #!/usr/bin/python # -*- coding: UTF-8 -*- ...

  9. python2.7练习小例子(七)

        7):题目:将一个列表的数据复制到另一个列表中.     程序分析:使用列表[:].     程序源代码: #!/usr/bin/python # -*- coding: UTF-8 -*- ...

随机推荐

  1. 转载: Centos7 升级python3,解决升级后不兼容问题

    Centos7配置更新国内yum源 http://blog.csdn.net/qingguiyu/article/details/50721956 Centos7 升级python3,解决升级后不兼容 ...

  2. 一点一点学写Makefile(2)-自动搜所当前目录下的所有源文件

    上个博客我们使用的是笨方法添加源文件,本次我要实现的是遍历文件夹来获得所有的cpp文件 //makefile CROSS = CC = $(CROSS)gcc CXX = $(CROSS)g++ DE ...

  3. python入门23 pymssql模块(python连接sql server增删改数据 )

    增删改数据必须connect.commit()才会生效 回滚函数 connect.rollback() 连接数据库 ''' dinghanhua sql server增删改 ''' import py ...

  4. OC 结构体

    void test() { // 这个机构只能在函数内部使用 // 定义一个名为Student的结构体类型 struct Student { int age; // 年龄 char *name; // ...

  5. Android进阶笔记13:ListView篇之ListView刷新显示(全局 和 局部)

    一.ListView内容变化后,动态刷新的步骤(全局刷新): (1)更新适配器Adapter数据源:(不要使用匿名内部类) (2)调用适配器Adapter的刷新方法notifyDataSetChang ...

  6. [ZJOI2012]小蓝的好友

    https://www.luogu.org/problemnew/show/P2611 题解 \(n\times m\)肯定过不去.. 我们把给定的点看做障碍点,考虑先补集转化为求全空矩阵. 然后我们 ...

  7. java操作文件常用的 IO流对象

    1.描述:流是字节数据或字符数据序列.Java采用输入流对象和输出流对象来支持程序对数据的输入和输出.输入流对象提供了数据从源点流向程序的管道,程序可以从输入流对象读取数据:输出流对象提供了数据从程序 ...

  8. Android学习笔记_8_使用SharedPreferences存储数据

    1.SharedPreferences介绍: Android平台给我们提供了一个SharedPreferences类,它是一个轻量级的存储类,特别适合用于保存软件配置参数.使用SharedPrefer ...

  9. vue使用v-for循环,动态修改element-ui的el-switch

    在使用element-ui的el-switch中,因为要用v-for循环,一直没有成功,后来仔细查看文档,发现可以这样写 <el-switch v-for="(item, key) i ...

  10. Python基础—10-常用模块:time,calendar,datetime

    #常用模块 time sleep:休眠指定的秒数(可以是小数) time:获取时间戳(从1970-01-01 00:00:00到此刻的秒数) localtime:将一个时间戳转换为一个对象,对象中包含 ...