“温度转换”问题

“温度转换”问题

1.温度刻画的两种不同体系

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

​ 以1个标准大气压下水的结冰点为0度,沸点为100度,将温度进行等分刻画

–华氏度 美国、英国等国家使用

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

2.需求分析

两种温度体系的转换

摄氏度转换为华氏度

华氏度转换为摄氏度

3.问题分析

1)该问题中计算部分的理解与确定

–理解1:直接将温度值进行转换

–理解2:将温度信息发布的声音或图像形式进行理解和转换

–理解3:监控温度信息发布渠道,实时获取并转换温度值

2)分析问题

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

​ 温度数值需要标明温度体系,即摄氏度或华氏度

​ 转换后也要给出转换后的温度标识

3)划分边界

输入:带华氏或摄氏标志的温度值

处理:根据温度标志选择适当的温度转换算法

输出:带摄氏或华氏标志的温度值

4)输入输出格式设计

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

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

5)设计算法

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

​ C = (F - 32) / 1.8

​ F = C * 1.8 + 32

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

4.代码编写

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

按F5执行,执行结果如下:

============ RESTART: D:\software\python3.8.2\myexe\#TempConvert.py ============
请输入带有符号的温度值:82f
转换后的温度是27.78C
>>> 
============ RESTART: D:\software\python3.8.2\myexe\#TempConvert.py ============
请输入带有符号的温度值:28c
转换后的温度是82.40F

扩展

输入输出的改变

–温度数值与温度标识之间关系的设计可以改变

–标识改变放在温度数值之前:C82,F28

–标识字符改变为多个字符:82Ce、28F

计算问题的扩展:

–温度转换问题是各类转换问题的代表性问题

–货币转换、长度转换、重量转换、面积转换

–问题不同,但程序代码相似

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值