アプリ版:「スタンプのみでお礼する」機能のリリースについて

前回の質問の数値が間違っていました。
大変申し訳ありません。
数値を取り上げて、計算して下さいました方々、大変ありがとうございました。
もしよろしければ、訂正数値をもとに、再びご回答くださいましたら、ありがたいと思います。
答えの組み合わせは一つだけとの、ことでありましたが、今回の数値でも8-8-8丁度になるのであれば、ありがたいと思います。
また、近辺の数値になるのであれば、いくつかのパターンを知りたく思います。

水色の行が正しい数値(含有率%)です。ピンクのセルに入力して竹色のセルに含有量が出ます。
合計(紫色のセル)が8-8-8の近辺になるような組み合わせを自動的に模索できる方法を知りたいと思ったのです。

前質問が、間違っていまして、すみませんでした。
またよろしくお願いします。

「エクセルの使い方です。再質問します。」の質問画像

A 回答 (6件)

答えは


170.0771534
138.6173537
49.31253048
ぐらいですね。


#やり方を教わっても自分でやってみる気はナッシングで,ご自分の仕事をヒトに丸投げして計算の答えだけ教えてクレクレということですね。
    • good
    • 0

先の質問で回答したものです。

うまく回答が伝わらなかった様なので再度
つまり式は
1.68x+3.71y+0z=8
3.4944x+1y+1.3Z=8
2.5872x+0.9y+4.77Z=8
となるx、y、zの答えを求めよ ということですよね。
3次元の方程式ですので、答えは 1つしかありません。
例えば、別のシートを準備して
http://yosshy.sansu.org/Excel_matrix.htm
のサイトにあるように
A1は =元データ!C7
A2は =元データ!D7
・・・
と下の図の様になる様に式を入れておきます。
あとはサイトを参考に Minverse,Mmult関数で回答がでます。
必要であれば
B8、B12、B16のセルに
=答えのシート!E5 と引っ張ってきてください。
ちょうど それぞれの合計が8になります。
「エクセルの使い方です。再質問します。」の回答画像2
    • good
    • 0
この回答へのお礼

かさねがさね、ご親切なご回答をありがとうございました。
先の質問から、一つ一つ、方程式まで沢山書いてくださり、ご親切に感謝します。教えて頂いたように、エクセルのサイトも見まして、『そんな動作もするのか!』と感心しました。新しい勉強になりました。ありがとうございます。
Minverse,Mmult関数というのがあるのですね(^o^)自分で再びやってみて、その通りの答えがでました。
私は最初、三つの肥料の混和なので、絵に描いたように8-8-8など丁度になるワケはない、と思っていました。でも折角エクセルなので、近似を簡単にさがせる方法をやってみたい!と思ったのです。こんなに見事な計算ができるとは、今後、大変役に立ちます。
お教えありがとうございました。

お礼日時:2011/06/28 11:26

すでに回答が出ていますが連立方程式を解くなら行列式を利用します。



例示のデータなら、準備として3つの係数をG1:I3セルにリンク貼り付けして、G6:G8に「8,8,8」と入力しておきます。

G11:G13セルを選択し、以下の式を入力し、Ctrl+Shift+Enterで確定して配列数式にします。

=MMULT(MINVERSE(G1:I3), G6:G8)

このG11セル以下の値をB8セル以下にリンク貼り付けし、その右のセルには「=$B8*C7」の数式を入力し右方向にオートフィルします(その下のセルにもこの数式をコピー)。

検算として、C18セルに「=SUM(C8,C12,C16)」の式を入力して右方向にオートフィルします。
「エクセルの使い方です。再質問します。」の回答画像3
    • good
    • 0
この回答へのお礼

ありがとうございます。
画面をわざわざ付けてくださいまして、大変分かりやすかったです。
行列式の方法ということを初めて知りました。Minverse,Mmult関数というのを自分で再びやってみて、その通りになりました。大変勉強になりました。
ありがとうございました。

お礼日時:2011/06/28 17:20

タイトルをもう少し考えていただきたいと思います。


また、質問もわかりにくく、説明上必要のない数値は入れないでほしいと思います。
結局、皆様の回答を見て意味が分かりました。

で、半ば遊びですが
B8セルに
=INDEX(MMULT(MINVERSE(TRANSPOSE(CHOOSE({1;2;3},C7:E7,C11:E11,C15:E15))),{8;8;8}),1)
[Ctrl]+[Shift] +[Enter] で確定、配列数式です({}で囲まれる)

B12セル
=INDEX(MMULT(MINVERSE(TRANSPOSE(CHOOSE({1;2;3},C7:E7,C11:E11,C15:E15))),{8;8;8}),2)
[Ctrl]+[Shift] +[Enter] で確定
最後の1が2に変わるだけ

B16セル
=INDEX(MMULT(MINVERSE(TRANSPOSE(CHOOSE({1;2;3},C7:E7,C11:E11,C15:E15))),{8;8;8}),3)
[Ctrl]+[Shift] +[Enter] で確定
最後の1が3に変わるだけ

chooseで行列を作り、transposeで縦と横を逆にし、minverseで逆行列を求め、mmultで{8;8;8}との行列積を計算し、INDEXで必要な数値を取り出した。
    • good
    • 0

#4です。

気持ち改良してみました
=MMULT(INDEX(MINVERSE(TRANSPOSE(CHOOSE({1;2;3},C7:E7,C11:E11,C15:E15))),1,),{8;8;8})
[Ctrl]+[Shft] +[Enter] で確定
=MMULT(INDEX(MINVERSE(TRANSPOSE(CHOOSE({1;2;3},C7:E7,C11:E11,C15:E15))),2,),{8;8;8})
=MMULT(INDEX(MINVERSE(TRANSPOSE(CHOOSE({1;2;3},C7:E7,C11:E11,C15:E15))),3,),{8;8;8})
行列積の計算において、結果に不要な計算をしないようにINDEX関数で行を抽出しました
    • good
    • 0
この回答へのお礼

ありがとうございます。
究極の合理的関数まで作ってくださって、ありがとうございます。
他の方のご指導で、この関数のことを知り、初めての勉強で、ワクワクの思いでしたのですが、これは、私のツタない質問への、究極の洗練された、ご回答ですね。
前回答につづき二度もお教えくださって、ありがとうございました。

お礼日時:2011/06/28 11:46

したいことが、質問の文章に書いてないようだ。


数値が違ってましたなんて、どうでもよい。回答者の答え(方法)が正しいと(判定できるなら)思えば、前の質問の提示データが誤っていたら、質問者が訂正した数値で、計算しなおしたら、仕舞いでは無いか。
既出の回答のどれが正しいか、あやまりか、質問者は判断できるのですか。出来なさそうだ。
それなら回答させても意味無いでしょう。
いっそ学校や書籍の問題などで、正解が判っているなら、発表しては。それならこう言うことだと回答者が指摘してくれるかもしれない。
3変数で3個の一次式があるから、回答は1つに決るが、そういう問題だと、中学生の代数の問題だし、何のことか判らない。
これは学校の宿題の問題の回答を求めているのではないか。質問コーナーに回答を直ぐ求めるのは京大入試題でも問題になった。
ーー
私が思うのには、
(1)これはエクセルの問題ではない(エクセルを計算道具として使えても)
(2)エクセルのソルバーの問題とも違うようだ
(3)もうひとつ次元がふえて、油粕、草木灰などの価格コストも勘案し、最小コストで、実現する問題ではないのか。
(4)こういう問題は数学やコンピュター計算科学の専攻の人が見る、数学などのカテゴリに投稿すべきではないのか。
普通のプログラマーなどは、文系の人が多いようだ。
ただしこのままの説明では問題の内容を理解してもらえないのではとおもうが。
    • good
    • 0
この回答へのお礼

まことにすみません。
軽率な再質問をしてしまいまして、不可解な思いをさせまして、申し訳ありませんでした。
前回の質問で連立方程式の問題とかMinverse,Mmult関数とかソルバーの方法とか、お教えくださったのですから、主体的に自分で計算しなおしてみるべきでした。
ご批判はごもっともです。すみませんでした。

お礼日時:2011/06/28 17:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!