1.3 实例1:温度转换 | Python语言程序设计(嵩天)
文章目录
- 课程简介
- 第一章 Python基本语法
- 1.3 实例1:温度转换
- 问题分析
- 两种温度体系
- 需求分析
- 确定问题的计算部分
- 划分问题的边界
- 实例编写
- 举一反三
- Python语法元素理解
- 改变输入、输出
- 扩展计算问题
- 补充
- 版权说明
课程简介
计算机是运算工具,更是创新平台,高效有趣地利用计算机需要更简洁实用的编程语言。Python简洁却强大、简单却专业,它是当今世界最受欢迎的编程语言,学好它终身受用。请跟随我们,学习并掌握Python语言,一起动起来,站在风口、享受创新!
—— 课程团队
MOOC课程:
Python语言程序设计(嵩天 、黄天羽 、礼欣)
北京理工大学
课程视频地址:
课程视频-B站
授课目标:
本课程适合如下教学目标:
- 程序设计入门课:面向各层次各专业大学在校生、部分优秀高中生,作为程序设计入门课程
- 体系化编程基础:面向拟构建坚实编程能力的自学者,作为不断奋斗的参考在线课程
- Python科目备考:面向全国计算机等级考试二级Python科目的备考考生,作为在线备考资源
- 再试一次的尝试:面向拟放弃计算机或编程学习的学习者,作为再试一次的课程资源,学不会这门课学再放弃不迟…
第一章 Python基本语法
1.3 实例1:温度转换
问题分析
两种温度体系
摄氏度 ( ℃ ℃ ℃)
以1标准大气压下水的结冰点为0度,沸点为100度,将温度进行等分刻画。
中国等大多数国家使用。华氏度 ( ℉ ℉ ℉)
以1标准大气压下水的结冰点为32度,沸点为212度,将温度进行等分刻画。
美国、英国等大多数国家使用。
需求分析
问题的需求分析:
两种温度体系之间相互转换。
摄氏度转换为华氏度,华氏度转换为摄氏度。
确定问题的计算部分
- 理解1:直接将温度值进行转换。
- 理解2:将温度信息发布的声音或图像形式进行理解和转换。
- 理解3:监控温度信息发布渠道,实时获取并转换温度值。
→ 采用理解1:直接将温度值进行转换。
- 温度数值需要标明温度体系,即摄氏度或华氏度。
- 转换后也需要给出温度体系。
划分问题的边界
输入:带华氏或摄氏标志的温度值。
处理:根据温度标志选择适当的温度转换算法。
输出:带氏或华氏标志的温度值。
→ 输入、输出格式设计
标识放在温度最后,F表示华氏度,C表示摄氏度。即:82F
表示华氏82度,28C
表示摄氏28度。
→ 算法设计
根据华氏和摄氏温度定义,利用转换公式如下:
C = ( F − 32 ) ÷ 1.8 C=(F-32)÷1.8 C=(F−32)÷1.8
F = C × 1.8 + 32 F=C×1.8+32 F=C×1.8+32
这里的 C C C 表示摄氏温度, F F F 表示华氏温度。
实例编写
实例1:
请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。
题目来源:python123要求:
- ① 输入输出的摄氏度可采用大小写字母C结尾,温度可以是整数或小数,如:
12.34C
指摄氏度12.34度;- ② 输入输出的华氏度可采用大小写字母F结尾,温度可以是整数或小数,如:
87.65F
指华氏度87.65度;- ③ 输出保留小数点后两位,输入格式错误时,输出提示:输入格式错误;
代码:
#TempConvert v1.py
TempStr = input("请输入带有符号的温度值: ")
if TempStr[-1] in ['F', 'f']:C = (eval(TempStr[0:-1]) - 32)/1.8print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in ['C', 'c']:F = 1.8*eval(TempStr[0:-1]) + 32print("转换后的温度是{:.2f}F".format(F))
else:print("输入格式错误")
举一反三
Python语法元素理解
温度转换程序共10行代码,但包含很多语法元素。通过参考实例代码的框架结构,逐行分析、逐词理解,初步感受Python语法。
改变输入、输出
- 改变温度数值与温度标识之间的关系设计。
- 标识改变放在温度数值之前:
C82
,F28
- 标识字符改变为多个字符:
82Ce
、28Fa
例:
温度转换2(相同的问题背景,要求不同)题目来源:python123
要求:
- ① 输入、输出的摄氏度采用大写字母"C"开头,温度可以是整数或小数,如:
C12.34
指摄氏度12.34度;- ② 输入输出的华氏度采用大写字母F开头,温度可以是整数或小数,如:
F87.65
指华氏度87.65度;- ③ 不考虑异常输入的问题,输出保留小数点后两位;
代码:
#TempConvert v2.py
TempStr = input()
if TempStr[0] in ['F']:C = (eval(TempStr[1:]) - 32)/1.8print("C{:.2f}".format(C))
elif TempStr[0] in ['C']:F = 1.8 * eval(TempStr[1:]) + 32print("F{:.2f}".format(F))
else:print()
扩展计算问题
温度转换是各类转换问题的代表性问题,如:货币转换、长度转换、重量转换、面积转换等。
问题不同,但程序代码相似。
补充
其它温度体系计算公式:
不同温度尺度参考示例图:
版权说明
1.3 实例1:温度转换 | Python语言程序设计(嵩天)相关推荐
- python语言程序设计嵩天-Python语言程序设计基础(第2版)嵩天课后答案
嵩天.礼欣.黄天羽Python语言程序设计基础(第2版)习题答案本书提出了以理解和运用计算生态为目标的Python语言教学思想,在系统讲解Python语言语法的同时介绍了从数据理解到图像处理的14个P ...
- python慕课笔记 Python语言程序设计 嵩天笔记整理
** 1.python基本语法元素 1.2** C诞生于1972年,python诞生于1990年 静态语言:编译执行:C/C++\Java,执行速度快 脚本语言:解释执行:Python.JavaScr ...
- 【python】Python语言程序设计/嵩天老师入门课程笔记整理
分章节目录 1.python开发环境配置 1.1 程序语言分类(执行方式): 1.2 python程序语法元素分析: 1.3 python保留字 2.python绘图 2.1 编程语言概述 2.2 t ...
- python语言程序设计嵩天-python语言程序设计基础(嵩天版),第二章程序练习题...
python语言程序设计基础(嵩天版),第二章程序练习题 欢迎访问江南烧酒的博客 2.2汇率兑换程序.按照1美元=6人民币汇率编写一个美元和人民币的双向兑换程序. """ ...
- python语言程序设计 嵩天老师(第七周)
1.Python对文件操作采用的统一步骤是: ...
- MOOC python语言程序设计 嵩天老师 笔记(第六周)
1.S和T是两个集合,哪个选项对S^T的描述是正确的? ...
- 《Python语言程序设计》——3.4 实例研究:最小数量的硬币
本节书摘来自华章计算机<Python语言程序设计>一书中的第3章,第3.4节,作者:[美]梁勇(Y. Daniel Liang) 更多章节内容可以访问云栖社区"华章计算机&quo ...
- Python语言程序设计笔记(全)
Python语言程序设计 源代码人类可理解 目标代码 计算机直接执行 文章目录 Python语言程序设计 1.编译与解释 2.编程语言分类 3.python语言简介 4. 下载配置python 5.编 ...
- Python语言程序设计笔记
例:获得用户输入数字N,计算并输出从N开始的5个质数,单行输出 首先:定义函数判断一个数是否是质数,return True/False,注意return True的格式,不在for循环体中,在函数体中 ...
最新文章
- 计算机视觉工程师一天都大致在做些什么?
- 《预训练周刊》第22期:Fastformer:加法注意力就是你所需要的、用于蛋白建模的大规模预训练语言模型...
- Android运行时识别API版本
- php读取csv指定行_PHP快速读取CSV大文件指定行
- [转] Oracle学习之创建数据库(新建实例)
- Java并发(9)- 从同步容器到并发容器
- 怎样使用OUTLOOK收发邮件 小雨
- long 雪花算法_为什么 MySQL 不推荐使用 uuid 或者雪花 id 作为主键?
- ASP.NET2.0下使用AJAX调用Webservice的方法
- cat3 utp是不是网线_科普向:关于网线必须了解的基本知识!
- 迅雷离线下载 docker
- destoon网站mysql分表_destoon 数据库操作
- 如何免费注册一个域名?
- 运用windows shell修复Wannacry漏洞
- 【SQL自学打卡|DAY17】——多表查询
- 解决复制大段英文文献到翻译软件出现的换行问题
- 网站关键词排名,如何快速提升?
- 手撸Spring系列2:IOC/DI 思想(源码篇-IOC)
- 以分割栅格为例实现FME模板的方案优化
- 使用VS编译mqtt库(一次成功)
热门文章
- 选择工业建模好还是游戏建模更有前途?资深建模师为你解答
- python 获取二进制图片数据及判断得到图片类型
- 【直流电机】基于matlab Simulink双闭环直流调速系统动态仿真模型【含Matlab源码 2363期】
- 分布式服务框架设计笔记一
- UP对战平台DOTA全图 炸图 踢人
- 计算机组成原理课程学什么,计算机组成原理课程的学习概要和学习方法
- 如何用VOSviewer分析CNKI关键词共现?
- win7系统老是弹窗怎么解决_如何解决win7系统中打开文件夹老是弹出新窗口的问题...
- 电脑去水印软件哪个效果好
- java finalize 何时被调用_Java禁止使用finalize方法