問004.
答えと解説は下にあります。
問題番号をクリックすると、答えに飛びます。
(1)
変数scoreの値が100の場合に「満点です」と表示されるif文を作成してください。
(2)
X = 1234 とするとき、Xと1234567の和が1236000より小さければ「small」を、1236000以上であれば「big」を出力してください。
(3)
変数 A の値が偶数の場合は「Aは偶数です」を、奇数の場合は「Aは奇数です」と表示されるif文を作成してください。ただし、Aは整数です。
(4)
変数 B の値を変数 C の値で割った時の商(整数)が10未満のときは「商は10未満」を、10以上のときは「商は10以上」と表示されるif文を作成してください。ただし、変数Cは 0 ではありません。
(5)
変数 D の3乗が正の数のときは「plus」を、負の数のときは「minus」を、0のときは「zero」と表示されるif文を作成してください。
(6)
リスト:E = [1, 5, 7, 10, 5, 7] があります。このリスト内に5が含まれていれば「5が○個含まれています」(○には5の個数が入る)と表示し、含まれていなければ「5は含まれていません」と表示するif文を作成してください。
(7)
変数 age (年齢) と 変数 sex (性別) の値の組み合わせにしたがって、下表に示すような表示をするif文を作成してください。
age→ sex ↓ | 20未満 | 20以上 |
0 | 未成年男子 | 成人男性 |
1 | 未成年女子 | 成人女性 |
(8)
「変数 height が150以上」または「変数 old が16以上」の場合は「乗れます」と表示し、どちらも満たさない場合は「乗れません」と表示するif文を作成してください。
(9)
「『変数 length が160以上』かつ『変数 weight が60以下』」を満たさない場合に「対象外」と表示するif文を作成してください。
答えと解説は下にあります。
問題番号をクリックすると、答えに飛びます。

答004.
変数scoreの値が100の場合に「満点です」と表示されるif文を作成してください。
#解答例
if score == 100 :
print("満点です")
if文の基本形は、下の通りです。
if 条件式 :
条件式が「真」のとき実行する文
注意してほしいのは、
・コロン(:)を忘れない!
・「if 条件式 :」の後の字下げ(半角スペース4つ分)を忘れない!
比較演算子 ==
「==」の左右の値が等しいことを表します。
「=」が2つあるのは、
代入するときの「=」と区別するためです。
X = 1234 とするとき、Xと1234567の和が1236000より小さければ「small」を、1236000以上であれば「big」を出力してください。
#解答例
X = 1234
if X + 1234567 < 1236000 :
print("small")
else:
print("big")
#出力結果
small
else :
同 if文内のelseより上の条件がすべて「偽」だったときに実行する文を記述できます。
変数 A の値が偶数の場合は「Aは偶数です」を、奇数の場合は「Aは奇数です」と表示されるif文を作成してください。ただし、Aは整数です。
#解答例
if A % 2 == 0 :
print("Aは偶数です")
else:
print("Aは奇数です")
#「偶数」は「2で割った余りが0」と考えればいいですね!
算術演算子 %
「割り算の余り」に関する記号です。
例えば、「5 % 2」は「5を2で割った余り」という意味です。
変数 B の値を変数 C の値で割った時の商(整数)が10未満のときは「商は10未満」を、10以上のときは「商は10以上」と表示されるif文を作成してください。ただし、変数Cは 0 ではありません。
#解答例
if B // C < 10 :
print("商は10未満")
else:
print("商は10以上")
算術演算子 //
割り算の答えの小数点以下を切り捨てる。
例えば、「10 // 3」は「10÷3=3.33… の小数部分を切り捨てて 3」となります。
変数 D の3乗が正の数のときは「plus」を、負の数のときは「minus」を、0のときは「zero」と表示されるif文を作成してください。
#解答例
if D ** 3 > 0 :
print("plus")
elif D**3 < 0 :
print("minus")
else:
print("zero")
elif 条件式 :
複数の条件式を記述できます。
「elseif」と書かないように注意しましょう。
算術演算子 **
累乗の計算ができます。
例えば、「10 ** 5」は「10の5乗(105)」を表します。
リスト:E = [1, 5, 7, 10, 5, 7] があります。このリスト内に5が含まれていれば「5が○個含まれています」(○には5の個数が入る)と表示し、含まれていなければ「5は含まれていません」と表示するif文を作成してください。
#解答例
E = [1, 5, 7, 10, 5, 7]
if 5 in E :
print("5が" + str(E.count(5)) + "個含まれています")
比較演算子 in
「in の左」が「in の右」に含まれているかを調べられます。
例えば、「5 in E」は「5は E に含まれている」を表しています。
変数 age (年齢) と 変数 sex (性別) の値の組み合わせにしたがって、下表に示すような表示をするif文を作成してください。
age→ sex ↓ | 20未満 | 20以上 |
0 | 未成年男子 | 成人男性 |
1 | 未成年女子 | 成人女性 |
#解答例
if age < 20 and sex == 0 :
print("未成年男子")
elif age < 20 and sex == 1 :
print("未成年女子")
elif age >= 20 and sex == 0 :
print("成人男性")
elif age >= 20 and sex == 1 :
print("成人女性")
#許容解答例
if age < 20 and sex == 0 :
print("未成年男子")
elif age < 20 and sex == 1 :
print("未成年女子")
elif age >= 20 and sex == 0 :
print("成人男性")
else:
print("成人女性")
##この場合、sex = 3 など範囲外の数字が代入された場合も,
##「成人女性」と出力されるため、ミスに気づきにくくなってしまう。
ブール演算子 and
数学用語の「かつ」にあたる演算子です。
例えば、「age < 20 and sex == 0」は
「age < 20」と「sex == 0」が同時に成り立つという意味です。
「変数 height が150以上」または「変数 old が16以上」の場合は「乗れます」と表示し、どちらも満たさない場合は「乗れません」と表示するif文を作成してください。
#解答例
if height >= 150 or old >= 16 :
print("乗れます")
else:
print("乗れません")
ブール演算子 or
数学用語の「または」にあたる演算子です。
例えば、「height >= 150 or old >= 16」は
「height >= 150」と「old >= 16」の少なくとも一方が成り立つという意味です。
「『変数 length が160以上』かつ『変数 weight が60以下』」を満たさない場合に「対象外」と表示するif文を作成してください。
if not (length >= 160 and weight <= 60) :
print("対象外")
ブール演算子 not
notの値の条件を「否定」します。
例えば「not length >= 160」は「length <= 160」と同じです。
ブール演算子の優先順位
ブール演算子には優先順位が存在するので、注意しなければなりません。
その優先順位は
not > and > or
です。
例えば、
not length >= 160 and weight <= 60
と書くと、not と and では not が強いので、
(not length >= 160) and (weight <= 60)
と解釈されます。
※万が一、問題・解答・解説に不備がありましたら、
お問い合わせまたはTwitterで報告してください。

記事への意見・感想はコチラ