- ベストアンサー
PHPで3の倍数かつ7の倍数を表す方法
- PHPのif文を使用して、変数が3の倍数かつ7の倍数であることを判定することができます。
- 具体的なコード例を示すと、if文の条件式に `%` 演算子を使用して変数が3で割り切れ、かつ7で割り切れることを表現します。
- 3の倍数かつ7の倍数である場合は、対応するメッセージを表示します。それ以外の場合は、条件に該当しないことを示すメッセージを表示します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
phpでは、演算子に優先順位があります。(phpに限らず、一般的なプログラミング言語でもそうです) 優先順位というのは例えば数学で、「1+2×3」とあった場合、掛け算を先に計算するルール(優先順位が高い)となっているので、1+2×3 = 1+6 =7、という計算結果になります。 プログラミング言語では、比較演算子や論理演算子にも、優先順位が定義されています。 >PHP: 演算子の優先順位 - Manual >https://www.php.net/manual/ja/language.operators.precedence.php さてそうすると。 > ($x % 3 == 0 && $x % 7 == 0) この式には、剰余を求める「%」と、比較する「==」と、論理AND演算の「&&」という演算子があります。 それを前記ページで確認すると、この中では (1) % (2) == (3) && の順に強く結合する、と書かれています。 そうすると先ほどの式に、明示的にカッコをつけて優先順位を表記すると、 ( ( ($x % 3) == 0 ) && ( ($x % 7) == 0) ) こうなります。 カッコが無くても、演算子の優先順位により、このカッコつきの式と同じ順番で、評価されるんです。 「( ($x % 3) == 0 ) 」の部分で、$x が 3 で割り切れる場合。 「( ($x % 7) == 0 ) 」の部分で、$x が 7 で割り切れる場合。 それらが「&&」で結合されているので、両方成立する場合、という式になっています。
その他の回答 (3)
- t_ohta
- ベストアンサー率38% (5238/13705)
「%」演算子は左辺を右辺で割った結果の余りを求めるモノなので「$x % 3 == 0 」は $x の中の値を 3 で割った時の余りが 0 と等しいという意味です。 同じく「$x % 7 == 0」は $x の中の値を 7 で割った時の余りが 0 と等しいという意味です。 それぞれ、3で割って余りが0なら3の倍数ですし、7で割って余りが0なら7の倍数だと言う事がわかります。 「&&」は右辺と左辺の論理積(AND)を求めているので、「$x % 3 == 0 && $x % 7 == 0」は $x の中の値を 3 で割った時の余りが 0 と等しく且つ $x の中の値を 7 で割った時の余りが 0 と等しいと言う式になります。 なのでif文の条件式として「$x % 3 == 0 && $x % 7 == 0」の結果が TRUE と判定されれば $x は3の倍数且つ7の倍数であると言えます。
お礼
ありがとうございます
- watanabe04
- ベストアンサー率18% (295/1598)
日本語で「3の倍数かつ7の倍数」が PHP語でいうと「$x % 3 == 0 && $x % 7 == 0」だから。
お礼
ありがとうございます
- agehage
- ベストアンサー率22% (2752/12072)
$xを3で割った余りがゼロ、すなわち3で割り切れる かつ $x を7で割った余りがゼロ、すなわち7で割り切れる
お礼
ありがとうございます
お礼
ありがとうございます