一、"温度转换"问题分析

1.1 温度转换

温度刻画的两种不同体系

  • 摄氏度:中国等世界大多数国家使用

    • 以1标准大气压下水的结冰点为0度,沸点为100度,将温度进行等分刻画
  • 华氏度:美国、英国等国家使用

    • 以1标准大气压下水的结冰点为32度,沸点为212度,将温度进行等分刻画

1.2 需求分析

两种温度体系的转换

  • 摄氏度转换为华氏度
  • 华氏度转换为摄氏度

1.3 问题分析

该问题中计算部分的理解和确定

  • 理解1:直接将温度值进行转换
  • 理解2:将温度信息发布的声音或图像形式进行理解和转换
  • 理解3:监控温度信息发布渠道,实时获取并转换温度值

1.3.1 分析问题

  • 采用 理解1:直接将温度值进行转换

    • 温度数值需要标明温度体系,即摄氏度或华氏度
    • 转换后也需要给出温度体系

1.3.2 划分边界

  • 输入:带华氏或摄氏标志的温度值
  • 处理:根据温度标志选择适当的温度转换算法
  • 输出:带摄氏或华氏标志的温度值

1.3.3 输入输出格式设计

标识放在温度最后,F表示华氏度,C表示摄氏度

82F表示华氏82度,28C表示摄氏28度

1.3.4 设计算法

根据华氏和摄氏温度定义,利用转换公式如下:

C=(F–32)/1.8

F=C∗1.8+32

其中, C表示摄氏温度, F表示华氏温度

二、"温度转换"实例编写

# TempConvert.py
TempStr = input("请输入带有符号的温度值: ")
if TempStr[-1] in ['F', 'f']:
    C = (eval(TempStr[0:-1]) - 32) / 1.8
    print(f"转换后的温度是{C:.2f}C")
elif TempStr[-1] in ['C', 'c']:
    F = 1.8 * eval(TempStr[0:-1]) + 32
    print(f"转换后的温度是{F:.2f}F")
else:
    print("输入格式错误")

编写上述代码,并保存为TempConvert.py文件

# TempConvert.py
TempStr = input("请输入带有符号的温度值: ")
if TempStr[-1] in ['F', 'f']:
    C = (eval(TempStr[0:-1]) - 32) / 1.8
    print(f"转换后的温度是{C:.2f}C")
elif TempStr[-1] in ['C', 'c']:
    F = 1.8 * eval(TempStr[0:-1]) + 32
    print(f"转换后的温度是{F:.2f}F")
else:
    print("输入格式错误")
请输入带有符号的温度值: 12f
转换后的温度是-11.11C

三、"温度转换"举一反三

3.1 Python语法元素理解

  • 温度转换程序共10行代码,但包含很多语法元素
  • 清楚理解这10行代码能够快速入门Python语言
  • 参考框架结构、逐行分析、逐词理解

3.2 输入输出的改变

  • 温度数值与温度标识之间关系的设计可以改变
  • 标识改变放在温度数值之前:C82, F28
  • 标识字符改变为多个字符:82Ce、28Fa

3.3 计算问题的扩展

  • 温度转换问题是各类转换问题的代表性问题
  • 货币转换、长度转换、重量转换、面积转换…
  • 问题不同,但程序代码相似

day1-01 温度转换的更多相关文章

  1. ytu 2029: C语言实验——温度转换(水题)

    2029: C语言实验——温度转换 Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 12  Solved: 10[Submit][Status][Web B ...

  2. 【笔记】嵩天.Python语言程序设计.完成两个简单实例(温度转换和绘图)

    [博客导航] [Python相关] 目标 使用PyCharm,完成两个小实例的编写和运行.一个是温度转换,一个是蟒蛇图形绘制. 过程 1.先设置project目录,虽然命名不是很正式,主要不太习惯软件 ...

  3. 温度转换-java

    java 温度转换 题目内容: 写一个将华氏温度转换成摄氏温度的程序,转换的公式是: °F = (9/5)*°C + 32 其中C表示摄氏温度,F表示华氏温度. 程序的输入是一个整数,表示华氏温度.输 ...

  4. 1001. 温度转换 (Standard IO)

    1001. 温度转换 (Standard IO) 时间限制: 1000 ms  空间限制: 262144 KB  具体限制   题目描述 将输入的华氏温度转换为摄氏温度.由华氏温度F与摄氏温度C的转换 ...

  5. 用Python程序温度转换实例

    实例:温度转换 (1)分析问题:利用程序进行温度转换,由用户输入温度值,程序给出输出结果:通过语音识别,图像识别等方法自动监听并获得温度信息发布渠道(如收音机.电视机)给出的温度播报源数据,再由程序装 ...

  6. 中国MOOC_零基础学Java语言_第1周 计算_第1周编程题_1温度转换

    第1周编程题 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数提交答案,系统将 ...

  7. [Python3 练习] 002 温度转换2

    题目:温度转换 II (1) 描述 温度的刻画有两个不同体系:摄氏度 (Celsius) 和华氏度 (Fabrenheit) 请编写程序将用户输入的华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度 转 ...

  8. [Python3 练习] 001 温度转换1

    题目:温度转换 I (1) 描述 温度的刻画有两个不同体系:摄氏度 (Celsius) 和华氏度 (Fabrenheit) 请编写程序将用户输入的华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度 转换 ...

  9. Python入门习题1.温度转换

    这一节的课堂例题为: 例1.编写一个Python程序,完成摄氏度到华氏度,华氏度到摄氏度的温度转换. 解: (1)分析问题:利用程序实现温度转换,由用户输入温度值,程序给出输出结果. (2)划分边界: ...

随机推荐

  1. Linux 笔记:核心思想、常用命令以及脚本语法

    总结于 <鸟哥的 Linux 私房菜 - 基础学习篇> ,图片也来自于此. 核心思想 目录树结构(directory tree) Linux 系统是基于目录树结构的,这是它的核心思想.目录 ...

  2. C# https证书通信Post/Get(解决做ssl通道时遇到“请求被中止: 未能创建 SSL/TLS 安全通道”问题)

    public static string HttpPost(string url, string param = null) { HttpWebRequest request; //如果是发送HTTP ...

  3. Vertx Future 异常处理

    Vertx Future 异常处理 异常发生 ​ 在使用Vertx进行开发的时候,必不可免使用Future异步编程框架.通过Future的 compose ,可以轻松实现不同异步任务的组合. ​ 但是 ...

  4. 升级@Scheduled-分布式定时任务

    最近我在对项目的定时任务服务升级,希望改造成分布式,原本是利用@Scheduled注解实现,然而它并不支持分布式,如果改成quartz或者Spring Cloud Task,感觉对于自己这个简单的项目 ...

  5. java8泛型

    目录 1,泛型中的相关操作符 2,泛型基本使用示例 3,通配符 3.1, T和?的区别 3.2,上下界通配符 4, 附加约束(&) ​ 泛型,也就是将类型参数化,然后在使用类或者方法的时候可以 ...

  6. 【SQL server基础】判断数据库、表格、视图、存储过程、函数书否存在

    库是否存在 if exists(select * from master..sysdatabases where name=N'库名') print 'exists' else print 'not ...

  7. Hyperion: Building the Largest In memory Search Tree

    Introduction 索引在数据管理中起到很重要的作用,很多索引结构都会采用访问速度快而且内存消耗少的trie树,但一般常见的trie树索引结构都强调效率而忽视内存的效率,他们的效率虽然高,但内存 ...

  8. Scala 学习笔记之函数(1)

    class Student { val mySayHello1: String => Unit = sayHello val mySayHello2: (String, Int) => U ...

  9. Step ‘Publish JUnit test result report’ failed: No test report files were found问题解决

    1. 查看配置 2.路径设置错误,修改路径和path一致即可 修改后的测试报告路径 重新构建成功

  10. Solidity 编程实例--Blind Auction 盲拍

    接下来扩展前面的公开拍卖成为一个盲拍.盲拍的特点是拍卖结束以前没有时间压力.在一个透明的计算平台上创建盲拍系统听起来可能有些矛盾,但是加密算法能让你脱离困境. During the bidding p ...