私はいくつかの頭の体操の質問バンクでこれに出くわしました。
What should be the answer of this?
( (3+1) / 3) * 6
I thought it is 7 but the correct answer is 8.
これは、(3 + 1)*(6/3)の場合にのみ発生します。式に括弧が付いているので、どうすれば8を取得できますか?再確認してみましたが、正解です。
誰かがこれを理解するのを手伝ってくれますか?
私はいくつかの頭の体操の質問バンクでこれに出くわしました。
What should be the answer of this?
( (3+1) / 3) * 6
I thought it is 7 but the correct answer is 8.
これは、(3 + 1)*(6/3)の場合にのみ発生します。式に括弧が付いているので、どうすれば8を取得できますか?再確認してみましたが、正解です。
誰かがこれを理解するのを手伝ってくれますか?
整数の操作:
((3 + 1) / 3) * 6
= (4 / 3) * 6
= 1 * 6
= 6
フロートの操作:
((3 + 1) / 3) * 6
= (4 / 3) * 6
= (4 / 3) * (6 / 1)
分数として:
= (6 * 4) / (3 * 1)
= 24 / 3
= 8
これは単純な算術演算です。プログラミングとは関係なく、中置記号、前置記号、後置記号の違いもありません。
((3+1) / 3) * 6 = (4 / 3) * 6
= 1.333... * 6
= 8
この頭の体操の質問バンクは、数学の通常のルールを使用することを明らかに期待しています。結局のところ、これは C の頭の体操の質問バンクではありません。代わりに整数除算を使用した場合でも (どこで4 / 3
が得られるか1
)、答えは 6 になります。
Wolfram Alpha で結果を参照してください。
その音からすると、これは基本的な算術演算であり、プログラミングとは何の関係もありません。
(3 + 1) / 3 * 6 =
4 / 3 * 6 =
(4 * 6) / 3 =
24 / 3 =
8