006 实例1-温度转换

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

1.1 温度转换

温度刻画的两种不一样体系算法

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

1.2 需求分析

两种温度体系的转换框架

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

1.3 问题分析

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

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

1.3.1 分析问题

  • 采用 理解1:直接将温度值进行转换
    • 温度数值须要标明温度体系,即摄氏度或华氏度
    • 转换后也须要给出温度体系

1.3.2 划分边界

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

1.3.3 输入输出格式设计

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

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

1.3.4 设计算法

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

\[ C = ( F – 32 ) / 1.8 \\ F = C * 1.8 + 32 \]it

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

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

# 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文件class

# 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
# 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("输入格式错误")
请输入带有符号的温度值: 12c
转换后的温度是53.60F

3、"温度转换"触类旁通

3.1 Python语法元素理解

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

3.2 输入输出的改变

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

3.3 计算问题的扩展

  • 温度转换问题是各种转换问题的表明性问题
  • 货币转换、长度转换、重量转换、面积转换…
  • 问题不一样,但程序代码类似
相关文章
相关标签/搜索