PHP PHP入門講座 プログラミング

【PHPプログラミング入門講座】[解答と解説] 比較演算子

PHPプログラミングのキービジュアル

[解答と解説] 比較演算子

前ページの練習問題「【PHPプログラミング入門講座】[練習問題] 比較演算子」の解答&解説です。
練習問題が解けたら、このページで答え合わせをしてみましょう!

練習問題1

次の表において、変数$aと変数$bの値が「変数の値」に書いている値の場合に、比較演算子の式に対する結果は、true / falseのどちらになるでしょうか?
(A)〜(G)に当てはまるものを答えてください。

変数の値 結果
$a = 3
$b = 6
$a == $b (A)
$a = 5
$b = 2
$a != $b (B)
$a = 7
$b = '7'
$a == $b (C)
$a = '2'
$b = '2'
$a === $b (D)
$a = 12
$b = 11
$a <= $b (E)
$a = 6
$b = -9
$a > $b (F)
$a = 3
$b = 3
$a >= $b (G)

練習問題1の解答と解説

<解答>

変数の値 結果
$a = 3
$b = 6
$a == $b (A)
false
$a = 5
$b = 2
$a != $b (B)
true
$a = 7
$b = '7'
$a == $b (C)
true
$a = '2'
$b = '2'
$a === $b (D)
true
$a = 12
$b = 11
$a <= $b (E)
false
$a = 6
$b = -9
$a > $b (F)
true
$a = 3
$b = 3
$a >= $b (G)
true

<解説>

(A)「==」は等しい場合にtrue、等しくない場合にfalseになる比較演算子です。
変数を値に置き換えると「3 == 6」は間違っていますので、falseが正解です。

(B)「!=」は等しくない場合にfalse、等しい場合にtrueになる比較演算子です。
変数を値に置き換えると「5 != 2」は正しいので、trueが正解です。

(C)「==」は等しい場合にtrue、等しくない場合にfalseになる比較演算子です。
変数を値に置き換えると「7 == '7'」となりますが、右辺の文字列の内容は数値ですので、数値型に自動変換されます(※補足1)。
よって、「7 == 7」になります。これは正しいため、trueが正解です。

※補足1:もし、この問題の演算子が「===」だった場合は、データ型と値を比較する演算子のため、文字列型→数値型の自動変換は行われません。「7 === '7'」となり、結果はfalseになります。

(D)「===」は値とデータ型が同じ場合はtrue、同じでない場合はfalseになる比較演算子です。
変数を値に置き換えると「'2' === '2'」となりますが、左辺と右辺とも同じ文字列型であり、値は2ですので、trueが正解です。

(E)「<=」は、小学校の算数で習った「≦」の意味になります。「左辺 ≦ 右辺」の場合はtrue、そうでない場合はfalseになります。
変数を値に置き換えると「12 <= 11」になります。これは正しくないため、falseが正解です。

(F)「>」は、「左辺 > 右辺」の場合はtrue、そうでない場合はfalseになります。
変数を値に置き換えると「6 > -9」になります。これは正しいため、trueが正解です。

(G)「>=」は、小学校の算数で習った「≧」の意味になります。「左辺 ≧ 右辺」の場合はtrue、そうでない場合はfalseになります。
変数を値に置き換えると「3 >= 3」になります。これは正しいため、trueが正解です。

おわりに

お疲れ様でした。
いかがでしたでしょうか?

もし間違えた練習問題がありましたら、前の記事「【PHPプログラミング入門講座】比較演算子」戻って読み直し、再度、練習問題にチャレンジしてください。

正解できた人は、おめでとうございます!
次の記事に進んでいきましょう!

PHPプログラミング入門講座 〜 全記事一覧 〜

-PHP, PHP入門講座, プログラミング
-, , , ,

Copyright© ハッピー・プログラミング・ライフ , 2024 All Rights Reserved.