- 締切済み
対比計算方法
対比計算の応用的な事です。 例えば、AとBがありましてC:Dの場合、AとBの使用する数字を求めたいのです。 数式で表すと以下のとおりです。 「(6-x):(6-y)=3:2」 Aが「(6-x)」の事、Bが「(6-y)」の事、C:Dが「3:2」の事です。 xとyは整数となります。 この時のxとyを求めたいのです。 又、このような事は可能なのでしょうか。 現在、LOOPで計算しているので何とか算出したいと思っている次第です。 ちなみに、現在のLOOPの計算方法は、 1.「3:2」なので「(6-3):(6-2)」となります。 2.残りは「3:4」になります。 3.残りを再度算出。「(3-3):(4-2)」。 4.残りは「0:2」となります。 5.残りを再度算出。「(0-3):(2-2)」。 6.「0-3」が不可なのでx=0,y=2となります。 7.残りがあるかぎり、再計算をします。 宜しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- 178-tall
- ベストアンサー率43% (762/1732)
>某業種の計算で、売りが6枚、買いが6枚あったとします。 >これを比率3対2で使用する枚数を求めるのです… この問題は、よく判りません。 けど、不定方程式 -2x + 3y = 6 を「対比計算」で解けることなら判ります。 -2x + 3y = 6 …(1) ↓ (この変形は一意的じゃない。「互除法」的な一考を要する) 10 - 2x = 16 -3y 2(6-x) = 3(6-y) (6-x) : (6-y) = 3 : 2 と変形して、 6-x = 3 …(2) 6-y = 2 …(3) から、x=3, y=4 なる一解を得る。 さらに (2), (3) の右辺を整数倍していくと…? 6-x = 3*2 = 6 …(2)' 6-y = 2*2 = 4 …(3)' から、x=0, y=2 などの一般解をたどれる…。
- 178-tall
- ベストアンサー率43% (762/1732)
>ちなみに、現在のLOOPの計算方法は、 >1.「3:2」なので「(6-3):(6-2)」となります。→ 2.残りは「3:4」になります。 >… 「3:2」を「スタート値」に採るのはナゼ? 自然な発想は、 6-x=3 → x=3 6-y=2 → y=4 だから、「3:4」なのじゃないのか…という気もします。 そのような「先入観」抜きで、漏れなくスキャンできる…ということが「LOOPの計算」の特質なのでしょうカ? 無限個ある「可能解」を「漏れなくスキャン」するのは、不可能だという気もしてます…。
お礼
回答、ありがとうございます。 文章がわかりにくかったようです。 「(6-x):(6-y)=3:2」なので「3:2」がスタート値にしました。 実は某業種の計算で、売りが6枚、買いが6枚あったとします。 これを比率3対2で使用する枚数を求めるのです。 3対2なので使用する枚数は売りが6枚、買いが4枚使用する事になります。 なのでスタート値が「3(枚):2(枚)」で次が「6(枚):4(枚)」になります。 その次は「9(枚):6(枚)」となりますが、売買の枚数が限度を超えたので 使用できる枚数は「6(枚):4(枚)」となります。 とはいえ、いろいろとご指摘はありがとうございます。
- 178-tall
- ベストアンサー率43% (762/1732)
>(6-x):(6-y)=3:2 ↓ 2(6-x) = 3(6-y) -2x + 3y = 6 …(1) としてみると、不定方程式のスタイル。 たとえば、「ユークリッド互除法」のパターンで、 x + 3(y-x) = 6 解の一つ、 x=6, y=x を得る。 (1) に戻って一般解、 x=6+3k, y=6+2k : k は整数 が得られる。
お礼
回答、ありがとうございます。 理屈はわかりました。 この式をプログラムではどのように作っていいのか模索中です。 参考にさせて頂きます。
- spring135
- ベストアンサー率44% (1487/3332)
文章がよくわからないので推定を含みますが (6-x):(6-y)=3:2 (1) を満たすx,yの一般解を求めよという問題と仮定します。 整数解の求め方の定石に従って計算します。 (1)より 2(6-x)=3(6-y) 3y-2x=6 (2) これを満たす一つの解は y=4, x=3 つまり 3×4-2×3=6 (3) (2)-(3)を作ると 3(y-4)-2(x-3)=0 これより (y-4)/2=(x-3)/3 この式の値をtとおき、tをパラメータとしてx,yを表示する。 (y-4)/2=(x-3)/3=t x=3t+3 (4) y=2t+4 (5) (4),(5)のtに整数値(t=0,±1,±2,........)を代入すればよい。
お礼
回答、ありがとうございます。 文章がわかりにくかったようです。すみませんでした。 式は仮定どおりです。 参考にさせて頂きます。
お礼
回答、ありがとうございます。 実を言うと某業界の某金額を算出する一部なのです。 なかなか、説明がうまくいかず、すみませんでした。 参考にさせて頂きます。