温度转换算法
温度刻画的两种不一样的体系网络
摄氏度:中国等世界大多数国家使用spa
以1标准大气压下的水的结冰点为0度,沸点为100度,将温度进行等分刻画设计
华氏度:美国,英国等国家使用code
以1标准大气压下的水的结冰点为32度,沸点为212度,将温度进行等分刻画orm
需求分析blog
两种温度体系的转换:input
摄氏度转换为华氏度入门
华氏度转换为摄氏度form
问题分析
该问题中的计算部分的肯定和理解
理解1 直接将温度值进行转换(入门)
理解2 将温度信息发布的声音或图像形式进行理解和转换(须要程序处理声音或图像等)
理解3 监控温度信息的发布渠道,实时获取并转换温度值(须要处理网络通讯,爬虫等)
分析问题
采用理解1 直接将温度值进行转换
温度数值须要标明温度体系,即摄氏度或华氏度
转换后也须要给出温度体系
划分边界
输入:带华氏或摄氏度标志的温度值
处理:根据温度值的标志选择适当的温度转换算法
输出:带华氏或摄氏度标志的温度值
设计算法
根据华氏和摄氏度定义,利用转换公式以下:
C = (F-32)/1.8
F = C * 1.8 + 32
其中,C表示摄氏温度, F表示华氏温度
def TempConvert(TempStr): if TempStr[-1] in ['F', 'f']: C = (eval(TempStr[:-1]) -32)/1.8 print("转换后的温度是{:.2f}C".format(C)) elif TempStr[-1] in ['C', 'c']: F = 1.8 * eval(TempStr[:-1]) + 32 print("转换后的温度是{:.2f}F".format(F)) else: print("输入格式错误") if __name__ == "__main__": TempStr = input("请输入带有符号的温度值:") TempConvert(TempStr)
触类旁通
输入输出的改变
温度数值与温度标识之间的关系设计能够发生改变
标识改在温度值以前:C28,F28
标识字符改变为多个字符:82Ce,28F
计算问题的扩展
温度转换问题是各种转换问题的表明性问题
货币转换,长度转换,重量转换,面积转换等
问题不一样,但程序的代码是类似的