• ベストアンサー

複数の実数値から最大値を求める数式は?

実数a、b、cがある場合、このa、b、cの最大値を求める数式はどうすればよいのでしょうか。 (プログラムではなく数式で算出することは可能でしょうか。)

質問者が選んだベストアンサー

  • ベストアンサー
  • nag0720
  • ベストアンサー率58% (1093/1860)
回答No.3

絶対値を使っていいのなら、 max(a,b)=(a+b+|a-b|)/2 だから、 max(a,b,c)=max(max(a,b),c) =((a+b+|a-b|)/2+c+|(a+b+|a-b|)/2-c|)/2 うまく工夫すればa,b,cの対称形にできるはずなんだけど、分からん。

himajin-sono1
質問者

お礼

どうもありがとうございます。 絶対値の部分は二乗のルートにすれば解決できるかと思います。 a、b、cの3つになった場合は、自分で考えてみます。 助かりました。

その他の回答 (4)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.5

工夫も何もなく, 6個の順列すべてを考えて和を 6 で割れば対称式>#3. あるいは lim(n→∞) (a^n+b^n+c^n)^(1/n) とか.

  • koko_u_u
  • ベストアンサー率18% (216/1139)
回答No.4

> 関数 max(a, b, c) が上記のような判断プロセスを含んでいないなら、その内容を教えて頂けないでしょうか。 まったく会話が成立しとらん。 あなたが「数式」だと思っているその内容がまったく回答者には、少なくとも私にはわからんのですよ。 絶対値 |a| だってあなたは、「a が >0 ならば」という判断プロセスなるものを含んでいると考えているかもしれないよね。 普通のひとは「算出する」といわれたら、計算方法すなわちアルゴリズムを問われていると考えるわけですが そうではない何かが欲しいんですよね?それは何?

  • koko_u_u
  • ベストアンサー率18% (216/1139)
回答No.2

数式ってどんなのまで許されるの? 極端な話 max(a, b, c) でもありじゃね?

himajin-sono1
質問者

お礼

1番目の回答者さんの回答にある >a-b>0の場合、aを選択 >a-b<0の場合、bを選択 のような判断を含まない方法です。 関数 max(a, b, c) が上記のような判断プロセスを含んでいないなら、その内容を教えて頂けないでしょうか。よろしくお願いいたします。

  • newkazuo
  • ベストアンサー率44% (13/29)
回答No.1

a-bを計算し、 a-b>0の場合、aを選択 a-b<0の場合、bを選択 次にc-a,もしくはc-bも同様に計算 という方法では駄目ですか? (結局プログラムもこういうふうに計算すると思いますが)

himajin-sono1
質問者

お礼

早々のご回答、ありがとうございます。ただ求めているのは(大小の判断を含んでいる)プログラムではなく、数式で最大値を算出できないか、ということです。 よろしくお願いいたします。

関連するQ&A