題解|ZeroJudge d068. 該減肥了!
【題目】d068. 該減肥了!
題解
1 | w=int(input()) |
解說
這題的意思其實就是,顧客入店時的體重是否>50,是的話輸出就是原體重-1
,否則輸出原體重
好,那在使用if
的情況下,我們的程式也許會長得像這樣…
1 | w=int(input()) |
但今天題目提示區有提到,不用if
,我們能解出本題嗎?
可以。
我們來看一下本題題解
1 | w=int(input()) |
當我們寫出w-(w>50)
時,若w<=50
,那這是False
,而在Python中,False
換成int
型態時是0
1 | print(int(False)) |
輸出為0
反之,若w>50,則為True
,轉換為int
時為1
1 | print(int(True)) |
輸出為1
因此,我們可以利用此一性質,寫出本題
就安心寫下print(w-(w>50))
,Python會自動將bool
轉為int
。
結語
以上就是本題題解,本題除複習比較運算子,也練習了Python中True
、False
轉換為整數1
、0
的特性,方便在運算中省略if
。
倘內容有誤或仍有疑問,歡迎在下方留言區留言!