- ベストアンサー
if文で3つの配分率の設定の仕方を教えてください
3つの証券の配分率(X1,X2,X3)の決め方がわからず困っています。 2証券の配分率(X1,X2)の場合は下に書いたようにできますが、3つの場合はどうすれば良いか教えて下さい。 if X1<=100 X2=100-X1; 配分率は1%から100%までの配分をきめます、例えば2証券(X1、X2)でX1が70%だったらX2は100%-70%で30%になります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
格納と言われてもどこに格納するのか示されていませんので,すべての配分率の例を表示するコードを書いてみました。for文によるループは多くのプログラム言語で使えると思いますので,下記が何というプログラム言語のコードか知らなくても,処理内容はイメージできるのではないでしょうか。 for ($x1 = 0; $x1 <= 100; $x1++) { for ($x2 = 0; $x2 <= 100 - $x1; $x2++) { $x3 = 100 - $x1 - $x2; print "$x1, $x2, $x3 \n"; } }
その他の回答 (1)
- jjon-com
- ベストアンサー率61% (1599/2592)
回答No.1
配分率ということですから,X1,X2,X3 の3変数の和が100%になるということでしょう? であるなら,2変数の値が分かっているという状態で残りの1変数を求めることが,プログラムにはできるだけです。どういう配分にするかの決め方は質問文からは分かりません。
質問者
補足
回答ありがとうございます。2証券の場合は 0%と100%、1%と99%、2%と98%、・・・・、98%と2%、99%と1%、100%と0% というように全ての配分率を格納したいのですがわかりましたらまたご回答お願いします。
お礼
すごく助かりました。本当にありがとうございます。