如果一个m位数,其每个位上的数字的m次幂之和为该数本身,则叫做水仙花数。 例如:153=13+53+33153=13+53+33就是一个水仙花数。 请建立一个函数能判断一个输入的数是否水仙花数。承上题,建立一个函数,当输入某参数maximum后,能自动找出所有小于等于maximum的水仙花数。
2条回答 默认 最新
关注 def wflower(n): # n=input('请输入一个大于100的参数n:') n=str(n) m=len(n) i=0 s=0 while i<m: s=s+int(n[i:i+1:1])**m i=i+1 if int(n)<100: print('请确认n是否大于100') else: if s==int(n): return('True') else: return('False') max=input('请输入参数max(max>=1000):') alist=[] for k in range(100,int(max)): re=wflower(k) if re=='True': alist.append(k) k=k+1 else: print('100到max之间的水仙花数有:',alist)
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 hexo+github部署博客
- ¥15 求螺旋焊缝的图像处理
- ¥15 blast算法(相关搜索:数据库)
- ¥15 请问有人会紧聚焦相关的matlab知识嘛?
- ¥15 网络通信安全解决方案
- ¥50 yalmip+Gurobi
- ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
- ¥15 itunes恢复数据最后一步发生错误
- ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
- ¥100 H5网页如何调用微信扫一扫功能?