這題看似簡單,但藏有一個小技巧(觀念)可以提供給大家:
在Python運算邏輯 or
中,程式會從左邊的判斷式開始依序判斷
當有判斷結果為True,後面的判斷式不再運算。
因此這題可以這樣寫:
a, b = map(int, input().split())
print("OK!" if b == 0 or a % b == 0 else a % b)
我們知道當b為0時,程式在執行a%b會出現運算錯誤(ZeroDivisionError)
所以我們把b==0邏輯寫在or的前面
當b==0時,整個判斷即為True,程式不再判斷a%b==0
也就不會出現運算錯誤