今プログラムしてるんだけど、質問がいくつかあるんだ。
数学の記法は知らないから適当な記法で書くけど、

配列A = [乱数A, 乱数B, 乱数C]; //配列の中身がいくつあるかは分からない。割合として使用。
総量 = 乱数; //欲しい配列Aの合計になる。
↓
欲しい配列 = [ (乱数A/配列Aの合計 * 総量), (乱数B/配列Aの合計 * 総量), (乱数C/配列Aの合計 * 総量) ]; //欲しい配列の中身がいくつになるかは配列Aにそのまま対応する。

で、まぁこれ (配列Aの乱数割合に応じて総量を振り分けた配列) が出来たわけだけど、
配列Aの合計が0だと、0で割り算したとか言ってプログラムが盛大にバグるんだよね。


質問1:どうしよう。
例えば乱数が1つで、それが0、総量が50だとすると、処理の趣旨から言って配列の中身は50が1つになって欲しいんだが。

例えばこれは、
欲しい配列 = [-10, +10];
総量 = 100;

こうなるべき。(のような気がする)。
欲しい配列 = [-100, +200 ];


質問2:数学的な解釈を教えれくれ。

質問3:この処理の数学的記法を教えてくれ (単に知りたいから)。