Python入門程式練習題-溫度轉換
Python入門程式練習題-溫度轉換
- 題目說明:
溫度的刻畫有兩個不同體系:攝氏度(Celsius)和華氏度(Fabrenheit)。
請編寫程式將使用者輸入華氏度轉換為攝氏度,或將輸入的攝氏度轉換為華氏度。
轉換演算法如下:(C表示攝氏度、F表示華氏度)
C = ( F - 32 ) / 1.8
F = C * 1.8 + 32
要求如下:
(1) 輸入輸出的攝氏度採用大寫字母C開頭,溫度可以是整數或小數,如:C12.34指攝氏度12.34度;
(2) 輸入輸出的華氏度採用大寫字母F開頭,溫度可以是整數或小數,如:F87.65指攝氏度87.65度;
(3) 不考慮異常輸入的問題,輸出保留小數點後兩位;
(4) 使用input()獲得測試用例輸入時,不要增加提示字串。
輸入
示例1:C12.34
示例2:F87.65
輸出
示例1:F54.21
示例2:C30.92
- 程式碼:
tempin=input()
#tempin獲得的是str型別的輸入,只要用input()都得到的是str型別資料
if tempin[0] is 'F':
C=(eval(tempin[1:])-32)/1.8
#這裡我一開始犯了一個錯誤,寫成了 C=(eval(tempin[1:-1])-32)/1.8
#但其實寫成-1時讀不到-1的,是讀到了-2就結束
#而寫成空的,預設就是len(x),所以能讀到最後一位
print('C{:.2f}'.format(C))
#輸出的格式需要注意,這樣是全部轉為str來輸出
#兩個單引號就是str,每個變數用{}表示,中間寫格式
#更多print相關的資訊在https://blog.csdn.net/bitcarmanlee/article/details/67647282
elif tempin[0] is 'C':
F=eval(tempin[1:])*1.8+32
print('F{:.2f}'.format(F))
else:
print()