見出し画像

りな塾 #10 &&、||、! 論理演算子

前回のクイズの答え

IFの条件が2つ以上ある場合の書き方も紹介しておきます。

if( 条件① && 条件② ){
     条件①と②に合致する場合に実行される
}

2つ以上の条件をつなぐための演算子があります。

論理演算子などといったりします。

画像1

論理演算子は、この3つしかありません。

例えば、こんな使い方をします。


&&(AND)

age が6以上、且つ(AND)12以下だった場合、小学生です。という文字が実行ログに出力されます。

左右の両方の条件が正しかった場合のみ{}内が実行されます。

if( age >=6 && age <= 12 ){
    console.log( "小学生です" );
}


|| (OR)

例えば、薬の適正年齢をチェックする場合などを考えてみましょう。年齢が15歳未満、または60歳以上の場合に注意喚起をしたい場合、このように ||(OR)で条件を連結することで表現ができます。

左右のどちらか一方の条件が正しかった場合に{}内が実行されます。

if( age < 10 || age >= 60 ){
    console.log( "この薬は服用できません。" );
}


!(NOT)

条件自体の否定。

age == 20 だけを条件から省きたい場合、先頭に !(NOT)をつけることで条件が反転します。

if( !(age == 20) ){
     console.log("20歳のみ入場できます。");
}


3条件以上の組み合わせ

3つ以上の条件を連結させることもできます。

また、このときカッコで囲むとその条件が優先されます。数学の計算式と要領はいっしょ。

6歳以上12歳以下の子供と、60歳以上の大人の場合に、特別なメッセージを表示したいとき。

if( (age >= 6 && age <= 12) || age >= 60){
    console.log("小学生と60才以上のシルバーは300円です");
} 

※ 簡易的に6歳以上、12歳以下を小学生として扱ってます。


今日のクイズ

前回のクイズを論理演算子を使って解決しましょう。

クラスの生徒全員にりんごとみかんを一つづつ配りたいです。

このとき、りんごとみかんの両方とも個数がちゃんと足りていたら、実行ログに "足りています" と表示をしてください。いずれか一方でも足りていない場合は、"不足しています" と表示してください。

students = 30;
apple = 32;
orange = 10;
//---- 以下に答えを入力

students に生徒の数が代入されています。apple にはりんごの数、orangeにはみかんの数が代入されているものとします。

これらの変数の数値を変えても、ちゃんと判定されるようにプログラムしてください!

students = 10;
apple = 12;
orange = 10; 
→ "足りています" と表示
students = 10;
apple = 5;
orange = 5;
→ "不足しています" と表示
students = 30;
apple = 29;
orange = 30;
→ "不足しています" と表示



#りな塾_licodeenar  #プログラム #遊び

この記事が気に入ったらサポートをしてみませんか?