当前位置: 首页 > news >正文

Python语言基础与应用-北京大学-陈斌-P32-31-计算和控制流-上机练习:创建并调用函数-水仙花数判定-上机代码

Python语言基础与应用-北京大学-陈斌-P32-31-计算和控制流-上机练习:创建并调用函数-水仙花数判定-上机代码

本文环境: win7 + Thonny3.2.6

# 水仙花数-阿姆斯特朗数(Armstrong number)训练
def self_times(number,user_number_len): # 自定义一个自己乘自己的函数i = 1self_times_result = numberwhile i < user_number_len:self_times_result = self_times_result * numberi += 1return self_times_resultdef is_sxh_number(user_number): # 自定义一个判断是否是水仙花数的函数user_number_len = len(user_number)i = 0 # 自定义 i 用来遍历用户输入的数字total_result = 0 # 自定义一个变量 total_result 接收整个程序运行的结果while i < user_number_len:temp = int(user_number[i]) # 用下标法取出用户输入的每个数值并转换为数值型total_result = total_result + self_times(temp,user_number_len)i += 1if total_result == int(user_number):print("%s是水仙花数。" % user_number)return Trueelse:return Falsedef sxh_list(max): # 自定义一个把水仙花数装入数组的函数i = 100result_list = []while i <= int(max):if is_sxh_number(str(i)):result_list.append(i)i += 1return result_listwhile True: #user_number = input("请输入一个大于100的数,程序会判断它是否是水仙花数:")is_sxh_number(user_number)user_max_number = input("请输入最大值max >= 1000,程序将输出100到max之间的水仙花数:")print(sxh_list(user_max_number))

结果:

Python 3.7.6 (bundled)
>>> %Run sxh_number.py
请输入一个大于100的数,程序会判断它是否是水仙花数:153
153是水仙花数。
请输入最大值max >= 1000,程序将输出100到max之间的水仙花数:99999
153是水仙花数。
370是水仙花数。
371是水仙花数。
407是水仙花数。
1634是水仙花数。
8208是水仙花数。
9474是水仙花数。
54748是水仙花数。
92727是水仙花数。
93084是水仙花数。
[153, 370, 371, 407, 1634, 8208, 9474, 54748, 92727, 93084]

相关文章:

  • C# 的一些好用的语法糖介绍
  • 前端面试练习24.3.7
  • 2024年FPGA可以进吗
  • 学习JAVA的第十五天(基础)
  • 数组元组列表之间的相互转化
  • 揭秘大型集团背后的数据管理方法:如何掌控数据洪流,引领行业新潮流?
  • iOS开发进阶(八):ipa应用唤起并跳转至指定页面
  • 【三】【SQL Server】如何运用SQL Server中查询设计器通关数据库期末查询大题
  • 如何学习、上手点云算法(三):用VsCode、Visual Studio来debug基于PCL、Open3D的代码
  • 抖音详情API:音频和图片资源的管理与使用
  • 数据结构:顺序表的奥秘
  • pgrouting学习记录
  • 【图像拼接/视频拼接】论文精读:Efficient Video Stitching Based on Fast Structure Deformation
  • 8套成熟在用的三级医院信息化系统源码,HIS、LIS、PACS、智慧导诊、线上预约挂号支付系统源码
  • mongo基本使用
  • 【159天】尚学堂高琪Java300集视频精华笔记(128)
  • 0基础学习移动端适配
  • 2017前端实习生面试总结
  • Android交互
  • bearychat的java client
  • C# 免费离线人脸识别 2.0 Demo
  • Java到底能干嘛?
  • jquery cookie
  • macOS 中 shell 创建文件夹及文件并 VS Code 打开
  • Otto开发初探——微服务依赖管理新利器
  • Python3爬取英雄联盟英雄皮肤大图
  • Spring Boot MyBatis配置多种数据库
  • spring boot 整合mybatis 无法输出sql的问题
  • 搞机器学习要哪些技能
  • 关于for循环的简单归纳
  • 类orAPI - 收藏集 - 掘金
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 排序算法学习笔记
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 一个完整Java Web项目背后的密码
  • 1.Ext JS 建立web开发工程
  • ​LeetCode解法汇总2304. 网格中的最小路径代价
  • #{}和${}的区别是什么 -- java面试
  • (2021|NIPS,扩散,无条件分数估计,条件分数估计)无分类器引导扩散
  • (zz)子曾经曰过:先有司,赦小过,举贤才
  • (第27天)Oracle 数据泵转换分区表
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (附源码)springboot掌上博客系统 毕业设计063131
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (十三)Maven插件解析运行机制
  • (转)为C# Windows服务添加安装程序
  • .apk文件,IIS不支持下载解决
  • .net 8 发布了,试下微软最近强推的MAUI
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .Net IE10 _doPostBack 未定义
  • .Net6支持的操作系统版本(.net8已来,你还在用.netframework4.5吗)
  • .NET上SQLite的连接
  • ::