打印所有的水仙花数python_打印出10000以内的所有的水仙花数——python
水仙花数:一个三位数,其各位数字立方和等于该数本身。如153是一个水仙花数,因为153=pow(1,3)+pow(5,3)+pow(3,3). 教材上出的这道题严格来说不严谨,三位的才叫水仙花数。按题目意思是所有的都是,就不是这么严格了,百科上讲的详细,就不赘述了!切记仅仅是为了实现作业题,没考虑太多,嫌弃时间复杂度高的童鞋自己修改!
整体思路
将数字转化为字符,便于使用每个字符进行幂次运算
输出结果
def my_sum(a):
n = len(a)
result = sum(map(lambda x: pow(int(x), n), a))
return result
def main():
for i in range(1, 10001):
a = str(i)
if my_sum(a) == int(a):
yield a
if __name__ == "__main__":
print(list(main()))
结果如下:
['1', '2', '3', '4', '5', '6', '7', '8', '9', '153', '370', '371', '407', '1634', '8208', '9474']
注意:理解的难点可能在生成器函数?查找文献琢磨一下即可,教材上很多也讲的非常好。
4. 注意普及一下水仙花数的概念:水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。
5. 一位自幂数:独身数
两位自幂数:没有
三位自幂数:水仙花数
四位自幂数:四叶玫瑰数
五位自幂数:五角星数
六位自幂数:六合数
七位自幂数:北斗七星数
八位自幂数:八仙数
九位自幂数:九九重阳数
十位自幂数:十全十美数
打印所有的水仙花数python_打印出10000以内的所有的水仙花数——python相关推荐
- JS:打印出10000以内的所有质数
JS:打印出10000以内的所有质数 质数:(0和1都不是质数)在大于1的自然数中,只能被1和本身整除. 自然数:(0和正整数) 方法一: var count = 0; for (var i = 2; ...
- 所有水仙花数c语言java_Java打印出1000以内的所有水仙花数
打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个 "水仙花数 ",因为15 ...
- c语言打印完数及其因子,C语言打印出1000以内完数及其因子算法
题目要求:编写程序,输出 1000 以内的所有完数及其因子.所谓完数是指一个整数的值等于它的因子之和,例如 6 的因子是 1,2,3,而 6=1+2+3,故 6 是一个完数./*求出 1000 以内的 ...
- 【PHP基础题】打印出100以内的质数,一行显示5个。(质数是只能被1跟它本身整除的数。1不是质数)
isPrimeNum(100, 5); /*** 打印出100以内的质数,一行显示5个.* @param [type] $num 范围数* @param [type] $m 每行显示的个数*/ fun ...
- python求10000以内的质数_python找出10000以内的质数_【Python学习】打印10000以内的所有素数...
摘要: 普及一下素数,初中学的都忘记了 百度:质数(prime number)又称素数,有无限个.质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数. 基本判断思路:在一般领域 ...
- PYthon打印10000以内的所有素数
PYthon打印10000以内的所有素数 from math import sqrt # 定义一个是否为素数的函数,如果n=1,则返回false def is_prime(n):if n==1:ret ...
- python找出10000以内的质数_【Python学习】打印10000以内的所有素数
摘要: 普及一下素数,初中学的都忘记了 百度:质数(prime number)又称素数,有无限个.质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数. 基本判断思路:在一般领域 ...
- python 一行打印出100以内的质素(素数)
python的列表推导式它是个好东西,不仅在列表里能用,在字典.集合中同样能用. 如果想用一行代码打印出100以内的质数(素数)的话,不妨尝试一下下面这行代码: [print(k) for k in ...
- java水仙花数10000_java打印10000以内的水仙花数
public static void main(String[] args) { int len = 1000; String length = ""; ...
最新文章
- 【Dual-Path-RNN-Pytorch源码分析】AudioReader
- c#调用excel报错 (异常来自 HRESULT:0x80010105 (RPC_E_SERVERFAULT))问题的解决
- IntelliJ Idea 2020.1 正式发布,官方支持中文了
- 【Linux系统编程】 浅谈标准I/O缓冲区
- 广东计算机电子学校,广东省电子职业技术学校
- windows 2012 AD域报错ladp非法绑定
- 【转】一致性hash算法与server列表维护
- 浅析SqlServer简单参数化模式下对sql语句自动参数化处理以及执行计划重用
- 数据仓库与数据挖掘论文
- 无需U盘最简单的系统重装Win10
- 统计学第一类错误和第二类错误
- 怎么做一个有价值的人
- Python实现自动给视频打码,减少不宜画面出现...
- Kubernetes(K8S)入门到运维 ( 六) Helm与功能组件及证书年限
- 【金猿人物展】袋鼠云易知微宁海元:从平台到场景,数字化进入全产业发展新阶段价值...
- linux shell脚本检测摄像头个数
- VUE中箭头函数可不兴用,尤其是箭头函数里头阿喂
- .Net平台技术栈?不止于此
- ORM的1+N查询问题及解决办法
- zookeeper学习笔记-zkclient,curator使用
热门文章
- DSP学习(1)XP虚拟机 CCS3.3安装教程
- 改变eclipse字体:
- docker可用容量 查看_查询docker中磁盘使用量大的容器
- 计算机视觉:多相机硬件同步拍摄
- 自制python小工具(2)——Gadgets 0.2
- YOLOv5中FPS计算
- OpenAI当红新星宋飏:最新研究获评「终结扩散模型」,16岁上清华
- (翻译) 小型PCB天线---Micrel公司RF产品
- CodeForces 1535D : Playoff Tournament 二叉树
- Mobox企业网盘文档权限管理的技术实现