• ベストアンサー

座標(x,y)から座標(x2,y2)を頂点としてとおり座標(x3,y3)と交わる放物線?

現在プログラムを作成しているのですが、とあるグラフを表示して 欲しいと言われ困っています。 ニーズは 任意の座標(x,y)と座標(x3,y3)を放物線で記すこと。 ただし、この放物線はxからx3の間隔の8:2の場所に頂点(x2,y2)が あること。 です。 すなわち・・・ (x,y)が(0,50)で(x3,y3)が(100,25)なら 頂点(x2,y2)は(80,?)に あるグラフです。 そもそも、こんなグラフを式でかけるんでしょうか? かけるとしたらどんな式で書けばいいのか教えてください。 条件としては 必ず x<=x3 , y>=y3 , xとx3の間隔は最低100です。 いろいろ参考書とか見てみたのですが、ギブアップです。 お助けください。

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

  • ベストアンサー
noname#101087
noname#101087
回答No.6

>(x,y)が(0,50)で(x3,y3)が(100,25)なら 頂点(x2,y2)は(80,?)にあるグラフです。...... 頂点とは、放物線とその対称軸との交点だとしましょう。 また、放物線の回転を許容します。 試している暇が無いので、筋書きだけ。 (1) (0,50) と (100,25) を結ぶ線分に、その中点で直交する直線 Lc を引く。 (2) 直線 Lc と直線 x=80 の交点を求める。そこを放物線の頂点 Pc とする。(交点が存在しないことあり) (3) (0,50), (100,25), Pc を通る放物線が所望の放物線。 あとはフォローして。

その他の回答 (8)

noname#101087
noname#101087
回答No.9

#6 = #8 です。 書き忘れを追加。 グラフの形は、2価関数(一つの x に y の値が二つ)なのですね。

noname#101087
noname#101087
回答No.8

#6 です。 >(1) (0,50) と (100,25) を結ぶ線分に、その中点で直交する直線 Lc を引く。 >(2) 直線 Lc と直線 x=80 の交点を求める。そこを放物線の頂点 Pc とする。(交点が存在しないことあり) >(3) (0,50), (100,25), Pc を通る放物線が所望の放物線。 (1) で対称軸の傾斜が、また (2) で頂点がわかりますね。 (4) さらに、(0,50) と (100,25) を結ぶ線分の長さと、その線分中点と頂点の距離を求めておきます。 回転と平行移動ができるソフトを使えば、グラフ描画できます。 もとのグラフは、y = ax^2 です。a は (4) の結果から出ます。 回転量は対称軸の傾斜、移動量は頂点の座標を使います。 数式になおすのは、そりあとじっくり考えて。

  • Meowth
  • ベストアンサー率35% (130/362)
回答No.7

座標(x1,y1)と座標(x3,y3)をとおる直線 y=(y3-y1)/(x3-x1)(x-x1)+y1 座標(x1,0)と座標(x3,0)をとおる放物線 y=a(x-x1)(x-x3) 座標(x1,y1)と座標(x3,y3)をとおる放物線 y=a(x-x1)(x-x3)+(y3-y1)/(x3-x1)(x-x1)+y1 軸の位置は、 x=(x3+x1)/2-1/2a×(y3-y1)/((x3-x1) これがx2になればいいから、aは a=(y3-y1)/(x3-x1)/(x3-2x2+x1)) けっきょく y={(y3-y1)/(x3-x1)/(x3-2x2+x1))}(x-x1)(x-x3) +(y3-y1)/(x3-x1)(x-x1)+y1 となる。 (0,50)で(x3,y3)が(100,25)なら 頂点(x2,y2)は(80,?) すなわち、 x1=0,x2=80,x3=100 y1=50,y3=25なら、 a=1/240 y=1/240(x-x1)(x-x3)+(y3-y1)/(x3-x1)(x-x1)+y1 y=x^2/240-2x/3+50

  • age_momo
  • ベストアンサー率52% (327/622)
回答No.5

>そもそも、こんなグラフを式でかけるんでしょうか? y≠y3なら書けますが同じなら頂点座標は(x+x3)/2に来るので無理でしょう。 (放物線を回転させれば別ですが) 同じ理由でx≠x3です。 >xからx3の間隔の8:2の場所に頂点(x2,y2)がある 具体的にx,x3が与えられたらx2=0.2x+0.8x3で求まります。 頂点x座標が例えば80である放物線は y=a(x-80)^2+b >(x,y)が(0,50)で(x3,y3)が(100,25) この値をそれぞれx,yに代入して連立方程式として解けばa,bが求まります。

Sipon-
質問者

お礼

放物線を回転させると言う発想はありませんでした。 >y≠y3なら書けますが同じなら頂点座標は(x+x3)/2に来るので無理でしょう。 このことを伝えたところ、少し考え方が変わりそうです。 ありがとうございました。

  • kei00z2
  • ベストアンサー率19% (56/284)
回答No.4

何回間違えれば済むんだか・・・(笑) (100、400)ですね。 本当すいません。。。

  • kei00z2
  • ベストアンサー率19% (56/284)
回答No.3

すいません、No2訂正です。 (X3、Y3)は(0,400)ではなく(10、400)です。

  • kei00z2
  • ベストアンサー率19% (56/284)
回答No.2

普通に2次関数のグラフでいけると思いますが・・・。 1番単純な例でいくと「Y=x2乗-160x+1400」 ですかね。 頂点は(80、0)で(x1、y1)が(0、6400)、(X3、Y3)が(0、400) です。 これなら条件全部クリアだと思いますが。

Sipon-
質問者

お礼

ありがとうございます。 頂点の考え方がよく分からず・・・ 皆さんのご意見を参考にしてがんばってみます。

  • koko_u_
  • ベストアンサー率18% (459/2509)
回答No.1

まずは (x1, y1), (x2, y2) ( (x, y) だと見辛いので勝手に変更 ) を通る放物線の方程式を考えて下さい。 頂点の条件はその後ゆっくり考えればよいでしょう。

Sipon-
質問者

お礼

ありがとうございます。 方程式ほかの方の意見も参考に考えてみます。