-7

私はいくつかの頭の体操の質問バンクでこれに出くわしました。

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を取得できますか?再確認してみましたが、正解です。

誰かがこれを理解するのを手伝ってくれますか?

4

3 に答える 3

5

整数の操作:

  ((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
于 2013-03-05T17:44:09.677 に答える
4

これは単純な算術演算です。プログラミングとは関係なく、中置記号、前置記号、後置記号の違いもありません。

((3+1) / 3) * 6 = (4 / 3) * 6
                = 1.333... * 6
                = 8

この頭の体操の質問バンクは、数学の通常のルールを使用することを明らかに期待しています。結局のところ、これは C の頭の体操の質問バンクではありません。代わりに整数除算を使用した場合でも (どこで4 / 3が得られるか1)、答えは 6 になります。

Wolfram Alpha で結果を参照してください。

于 2013-03-05T17:42:52.583 に答える
1

その音からすると、これは基本的な算術演算であり、プログラミングとは何の関係もありません。

(3 + 1) / 3 * 6 = 
4 / 3 * 6 =
(4 * 6) / 3 =
24 / 3 =
8
于 2013-03-05T17:43:26.070 に答える