こんにちは、株式会社プロシードの「こた」です!
本日はJavaの論理演算子を学んでいきます!
・「~~、かつ・・・」を表す記号(演算子)
・「~~、または・・・」をあらわす記号(演算子)
・「~~じゃない」を表す記号(演算子)
論理演算子、また難しそうな名前ですね^ ^;
でも、ウェブアプリなどを作るためには欠かせない分野です!
これをマスターすれば、、
「条件Aと条件B、両方満たした場合に”完了”と表示」
と言った具合に応用できます!
こーゆーのをスラスラと書けるようになりたいですね^ ^
皆さんに「理解できました!」といってもらえるように頑張ります!
よろしくお願いします^ ^
前回出題したJavaの問題
前回の記事で、論理演算子に関する問題を出題しました!
以降でこの問題を解説していきますが、もちろん問題を解いていなくても大丈夫ですので、ご心配なく^ ^
では、はじめましょう!
問題1: 「~~、かつ・・・」を表す論理演算子
問題1はこちら
正解
注目すべきは、10行目で登場する&&という記号です!
見た目はただの半角2文字の記号ですね。
何のかっこよさも”華”もないですが、すんごい重要な記号です!
要するに「両方満たしてはじめてtrue」です!
どちらか一方が満たせていなかったら、もうダメです!
「ユーザー名とパスワード、両方合っていたらログイン可能」みたいなイメージですね^ ^
板書の説明で一つ注意点があります。
板書の例では、xが20または30の時はfalseになります!
「20より大きい=20は含まない」ですし、「30より小さい=30は含まない」からです!
「何だよ、いちいち細けーな」と思うかも知れませんが、そんな事言わないでください(笑)
そういう時は、自分がインターネット通販サイトの作成者になった時のことをイメージしてみてください!
お酒が出品されていたとしましょう!
お酒はハタチになってから、ですね^ ^
もしプログラムで「20歳”以下”の場合は、購入を拒否する」みたいに書いてしまう、つまり
「年齢<=20」のとき、購入を拒否する。
こう書いてしまうと、20歳の人もお酒が変えないですね^ ^;
ついにハタチの誕生日を迎え、意気揚々とネット通販でお酒をポチったら、拒否された。ちょっと可愛そうですね(笑)
「以上」なのか「~より大きい」の違いはわずかですが、とても重要です!
気をつけましょうね^ ^
それでは、上記を踏まえた上で、問題1と実行結果をもう一度見てみましょう!
問題1(再掲)
実行結果(再掲)
・条件は「xが6より大きい、かつxが8より小さい」
これはtrueですね^ ^
問題2: 「~~、または・・・」を表す論理演算子
問題2はこちら
正解
注目すべきは、10行目で登場する||という記号です!
※これ、小文字のエルではなく、縦の棒です。「パイプ」といいます。入力の仕方がわからない場合は、、ググってみてください、たぶん出ます!笑
見ていきましょう^ ^
要するに「どっちか片方でも満たしていればtrue」です!
「成年か、あるいは未成年でも保護者の同意があればOK」みたいな条件、よくあるじゃないですか?
あれって要は、どっちかを満たしていればOKですよね?
あんな感じです^ ^
それでは、上記を踏まえた上で問題2とその実行結果をもう一度見てみましょう!
問題2(再掲)
実行結果(再掲)
・条件は「yが8以上、またはyが5以下」
1つ目の「yは8以上」こそダメでしたが、「yが5以下」は満たせてますね?
つまり、trueです^ ^
問題3: 「~~じゃない」を表す論理演算子
問題3はこちら
正解
お気づきの方もいらっしゃるかも知れませんが、問題3と問題2のプログラムはとても似ています!
解説していきます^ ^
!には「否定」の意味があります。
第4回の記事の問題2で、比較演算子を学んだのを覚えていますでしょうか??
「等しいときは==」「等しくないときは!=」でしたね^ ^
実は、等しくないときの!マークも今回と同じで、否定の意味です!
「等しい」を否定して「等しくない」になった、ということですね^ ^
(それで言ったら!==じゃないんですか?というツッコミは、勘弁してください(笑))
なので、先頭に!マークを付けたら、否定です!
ちなみに!マークをつける際には基本カッコをつけてくださいね!
板書の「!(x <= 20)」を例えば「!x <= 20」と書くとエラーになります!
理由は!の優先順位が高いからです!
カッコをつけると、その中を真っ先に実行させることができます!
だからカッコでくくって、trueかfalseのどっちかに変換してから、!マークを実行させる。
でないと板書の右側のように、数値に対して否定をしてしまうことになります。
!は真偽値に対してしか使えません!
「!2」と書けば「2じゃない」みたいに思うかも知れませんが、これダメです^ ^;
気をつけてくださいね!
最後に
お疲れさまでした!
今回は論理演算子を解説していきました!
「わかりやすかった!」「わかりにくかった、、」など、コメントいただければ嬉しいです!
それでは、また次の記事でお会いしましょう!
最後まで読んでくださり、ありがとうございました!
以上、こたでした!