python2.7练习小例子(十八)
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练习小例子(十八)的更多相关文章
- python2.7练习小例子(八)
8):题目:输出 9*9 乘法口诀表. 程序分析:分行与列考虑,共9行9列,i控制行,j控制列. 程序源代码: #!/usr/bin/python # -*- coding: ...
- python2.7练习小例子(二十八)
28):题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母. 程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母. ...
- python2.7练习小例子(十)
10):古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 程序分析:兔子的规律为数列1,1 ...
- python2.7练习小例子(二十九)
29):1.题目:按相反的顺序输出列表的值. #!/usr/bin/python # -*- coding: UTF-8 -*- a = ['one', 'two', 'three'] for ...
- python2.7练习小例子(十二)
12):题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个"水仙花数" ...
- python2.7练习小例子(二十四)
24):1.题目:利用递归方法求5!. 程序分析:递归公式:fn=fn_1*4! #!/usr/bin/python # -*- coding: UTF-8 -*- def fact( ...
- python2.7练习小例子(十六)
16):题目:输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数. 程序分析:利用 while 或 for 语句,条件为输入的字符不为 '\n'. 程序源代码: #!/u ...
- python2.7练习小例子(十五)
15):题目:输出指定格式的日期. 程序分析:使用 datetime 模块. 程序源代码: #!/usr/bin/python # -*- coding: UTF-8 -*- ...
- python2.7练习小例子(七)
7):题目:将一个列表的数据复制到另一个列表中. 程序分析:使用列表[:]. 程序源代码: #!/usr/bin/python # -*- coding: UTF-8 -*- ...
随机推荐
- May 30th 2017 Week 22nd Tuesday
Knowledge will give you power, but character respect. 知识给你力量,品格给你别人的尊敬. Good characters can help us ...
- 【2017-06-06】Qt中的键盘事件:QKeyEvent及相关处理函数
QKeyEvent及其相关的处理函数,比如QKeyPressEvent.QKeyReleaseEvent()等在QtGui编程中非常常用,尤其是需要借助标准键盘的编码来实现一些自定义功能的时候. 这算 ...
- Django运行访问项目出现的问题:Invalid HTTP_HOST header: '192.168.114.25:8001'. You may need to add u'192.168.114.25' to ALLOWED_HOSTS.
当运行python manage.py runserver 0.0.0.0:8001时候,出现Invalid HTTP_HOST header: '192.168.114.25:8001'. You ...
- bzoj5000 OI树
Description 几天之后小跳蚤即将结束自己在lydsy星球上的旅行.这时,lydsy人却发现他们的超空间传送装置的能量早在小跳蚤通过石板来到lydsy星球时就已经消耗光了.这时,小跳蚤了解到自 ...
- 如何写一个FMDB帮助类?看看runtime吧
FMDB是一个封装很好的sqllite类库.项目中调用的时候只需要写SQL语句,就能实现数据的CURD.我试过即使手写SQL语句也很麻烦,需要一个字段一个字段的拼上去,而且容易出错.有没有动态获取字段 ...
- 原生ajax、XMLHttpRequest和FetchAPI简单描述
什么是ajax ajax的出现,刚好解决了传统方法的缺陷.AJAX 是一种用于创建快速动态网页的技术.通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个 ...
- bootstrapPaginator设置同步会翻2页的小坑
因为需要用到post的返回值在做后面的决定.不想嵌套在回调函数中.网上找了一下.设置为同步 $.ajaxSetup( { async: false }); 结果bootstrap的翻页组件就出了bug ...
- C#基础 一(方法详解)
需要知道:类和方法的关系 方法和参数修饰符 自定义方法可以有或没有参数,也可以有或没有返回值.可以被各种关键字(static.virtual.public.new等)修饰以限制其行为. C#参数修饰符 ...
- ffmpeg 学习
1.ffmpeg使用语法 命令格式: ffmpeg -i [输入文件名] [参数选项] -f [格式] [输出文件] ffmpeg [[options][`-i' input_file]] ...
- <body> 中的 JavaScript
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...