「if文の条件に比較演算子を使わないとき」の読み方がわかりません
Pythonでif文をやっています。基本的なことはわかる(つもり)なのですが、if文の条件が「比較演算子 論理演算子」を使わない場合の文を日本語訳できずに困っています。
該当のソースコード
整数aがbで割り切れるかどうかの判定を行うだけのシンプルな文です。
Python
1a = int(input("整数a : ")) 2b = int(input("整数b : ")) 3 4c = b != 0 and a%b 5print(c, end="...") 6 7if c: 8 print("aはbで割り切れません。") 9else: 10 print("bが0 または aがbで割り切れます。") 11
3行目の論理演算子andの使い方は理解しています。
左の条件が偽の時は、A and Bが成立し得ないので、Falseがcに代入されます。
左の条件が真の場合、右の条件
a%b
の値がcに代入されます。
問題は、そのあとのif文です。
if c:
とありますが、変数cにFalseないし数字が代入されているので、
else: print("bが0 または aがbで割り切れます。")
が実行される間も無く処理が終了してしまう気がしています。
この時点で、「if文の正しい読み方を理解していないのだな...」と絶望してしまいました。
お忙しい中恐縮ですが、回答をお願いいたします。
回答4件
あなたの回答
tips
プレビュー