實例:溫度轉換
(1)分析問題:利用程序進行溫度轉換,由用戶輸入溫度值,程序給出輸出結果;通過語音識別,圖像識別等方法自動監聽並獲得溫度信息發布渠道(如收音機、電視機)給出的溫度播報源數據,再由程序裝換后輸給用戶;隨着互聯網的高度普及和接入的便捷,程序也可以定期從溫度信息發布網站獲得溫度值,再將溫度信息轉換成旅行者熟悉的方式。
(2)划分邊界:明確問題的輸入數據、輸出數據和對數據處理的要求。由於程序可能接收華氏溫度和攝氏溫度,並相互轉換,該功能的IPO描述如下。
輸入:帶華氏或攝氏標志的溫度值
處理:根據溫度標志選擇適當的溫度轉換算法
輸出:帶攝氏或華氏標志的溫度值
(3)設計算法:根據華氏和攝氏度的定義,兩個溫度體系都以1標准大氣壓下的水的結冰點和沸點為溫度區邊界,算法:
C=(F-32)/32
F=C*1.8+32
(4)程序:
(5)調試測試:
(6)升級維護:任何程序都有生命周期,需要不斷維護和升級。
補發代碼:
1 TempStr=input("請輸入一個帶有符號的溫度值(82F):") 2 if TempStr[-1] in ['C','c']: 3 f=(eval(TempStr[:-1]))*1.8+32 4 print("{:.2f}F".format(f)) 5 elif TempStr[-1] in ['F','f']: 6 c=(eval(TempStr[:-1])-32)/1.8 7 print("{:.2f}C".format(c))