2013-02-18 4 views
5

私はこの問題を解決しましたが、もっと速い方法があるのだろうかと思います。JAVAのmaxとmin関数のみを使用して3つの乱数の中間の番号を見つける

a、b、cがランダムに生成された数値であると仮定すると、Math.maxとMath.min関数を使用するだけで中間の数値を見つける方法はありますか?

med = Math.max(Math.max(Math.min(a,b),Math.min(b,c)),(Math.max(Math.min(b,c),Math.min(a,c)))); 

ありがとう、どんな応答も高く評価されます。

+0

これは明らかです。別の変数(例:Math.min(b、c))で同等の部分を移動することができます。 – Raman

+1

なぜdownvotes? –

+0

@timonik - ありがとうございました! :D – IKillR

答えて

3

次はどうですか?

min(min(max(a,b), max(b,c)), max(a,c)) 
+0

a = 2 b = 3 c = 1で動作しますか? – Raman

+0

入力いただきありがとうございます! bが中間の数字であるとうまくいきません。 aが最大でcが最小であると仮定します。 min(max(a、b)、min(b、c)、max(a、c))はcを与えます。 – IKillR

+0

@timonik。今はうまくいくでしょう。 –

関連する問題