• ベストアンサー

解が二つあるかどうか調べる方法

naniwacchiの回答

  • naniwacchi
  • ベストアンサー率47% (942/1970)
回答No.2

円といっても楕円の式になっているので、最大で 4つの解がでてくるのでは?

関連するQ&A

  • 2次方程式の解

    ax^2+bx+c=0の方程式について abcを自分で入力して、「2次方程式として成り立つか」の判断をし、2次方程式であればその解を求めるプログラムです。 2次方程式の解き方をなんとなく忘れていたので、数IIの教科書やらで確認してみました。 以下のように作成したのですが、解が出るはずの値を入力しても強制的に終了してしまいます。どこがおかしいのでしょうか? 他に気になる点は、メイン関数にて「2次方程式として成り立った場合」にはサブへ移動ができているのでしょうか。 あと、仮に↑が合っていたとして、異なる2つの虚数解の計算方法は以下のやり方でも良いのかどうかもお聞きしたいです。 よろしくお願いします。 #include<stdio.h> #include<math.h> void niji(double a,double b,double c){ double x1,x2,x3,y1,y2,D; D=b*b-(4.0)*a*c; if(D>0){ printf("2つの異なる実数解\n"); x1=(-b+sqrt(D))/(2.0*a); x2=(-b-sqrt(D))/(2.0*a); printf("x= %f , %f \n",x1,x2); } else if(D==0){ printf("重解\n"); x3=(-b)/(2.0*a); printf("x= %f \n",x3); } else{ printf("2つの異なる虚数解\n"); x3=(-b)/(2.0*a); y1=sqrt(D)/(2.0*a); y2=-sqrt(D)/(2.0*a); printf("x= %f + i %f, %f - i %f\n",x3,y1,x3,y2); } return; } int main(void){ double a,b,c; printf("ax^2+bx+c=0の式のabcを入力せよ\n"); while(scanf("%f %f %f",&a,&b,&c)){ if(a==b==c==0){ break; } else if((a==b==0)&&(c!=0)){ printf("不能\n"); } else if((a==0)&&(b!=0)){ printf("1次方程式になる\n"); } else{// 入力されたabcが↑の3つに該当しなければ niji(a,b,c);//←サブ関数に示した2次方程式を解く } } return 0; }

  • 3元連立1次方程式の解を持つ条件とその解

    3元連立1次方程式の解を持つ条件とその解 次の3元連立1次方程式(1)x+2y+3z=a (2)2x+3y+4z=b (3)3x+4y+5z=c の解を持つ条件とその解を求めます。-2x-y=8a-3b,2y+4z=3a-c,x-z=-3a+2bなどの関係式を求めたのですが、そこからの展開がわかりません。よろしくお願いします。 

  • 3次方程式の1つの解から他の解を導く公式

    有理係数の整式 f(x)=x^3+ax^2+bx+c は有理数の範囲で因数分解できなく, d=√(a^2b^2-4a^3c+18abc-4b^3-27c^2)     が有理数であるとする. このとき,方程式 f(x)=0 の1つの解をθとするとき,他の解をθの最低次の整式として表せ. (答)(-1/2)(θ+a)±(1/2d){2(-a^2+3b)θ^2+(-2a^3+7ab-9c)θ-a^2b-3ac+4b^2} dはどこから出てきたのかも含めて、最低次の整式が答えのようになる計算ががまったくわかりません。

  • 実数解

    3つの2次方程式は少なくとも1つは実数解を持つことを示す問題です。 だたし、a,b,cは実数とします。 (x^2)+3ax+2b-1=0 …(1) (x^2)+2bx+2c-1=0 …(2) (x^2)+2cx+2a-1=0 …(3) (1)の判別式は D/4=(a^2)-2b+1 (2)の判別式は D/4=(b^2)-2c+1 (3)の判別式は D/4=(c^2)-2a+1 となりましたがどのようにして少なくとも1つは実数解ということを探すのでしょうか?

  • 横の合計をOFFSETであわらす方法

    一列目のセルA B C D E F に数字が入っていたとします。 例 A B C D E F G H 1 2 3 4 5 6 (X) (Y) (Y)に任意の数値(この例だとA~Fまでなので6まで)を入れ、(X)に合計を出したいのですが、 どのようにOFFSETを組めばいいのかわかりません。 (Y)に任意の数値として3を入れた場合、 ABCの合計されるケース(Aが基点)とFEDの合計されるケース(Fが基点) 両方のケースの計算式を教えてください。 みなさま、よろしくお願いします。

  • 連立一次方程式の解の幾何学的理解

    線形代数に関連して、 連立一次方程式 a1x+b1y+c1z=d1 a2x+b2y+c2z=d2 a3x+b3y+c3z=d3 の解を求めることは空間的にどのような図形の交点を求めることなのか、解の有無で場合分けしてそれぞれの交わり方の例を図示せよ。 という問題があるのですが、これは3つの平面の交わりを考えれば良いのでしょうか? いまいち理解ができないので、ご助力いただければと思います。

  • 実数解条件

    y=x+1/x(xは0以外の解をもつ)とき、実数解条件を求めよ。 …という問題の時、x^2ーyx+1=0として、判別式D≧0としますが、 このときは、yがどの値でもx≠0だから、D≧0で良い、という認識でいいですか? たとえば、今例が思いつかないんですが、yがaの値の時に、x=0が成り立つとしたら、答えはD≧0で出たyの範囲➕x=0 が成り立つ時のyの値は除く、という認識であってますか? ⬆︎この前提でいくと、ax^2+bx+cのときの実数解条件はどうなりますか? 普通に、x=0 が成り立つ場合と成り立たない場合で分けて考えればいいんでしょうか。 5

  • 反復計算で指数方程式の解を求めたい

    よろしくお願いいたします。以下方程式(単調増加関数)のxについて求めたいです。 a x + (b x)^1/(n+1) +(c x)^1/(m+1) - d=0 a, b, c, d (定数)を各列に代入、各行の右側にxを求める式を代入し計算するシートを作りたいです。反復計算、循環参照を使用しa,b,c,dの列の横に数式をコピペして一括て求めたいです。 近似解でも良いです。 ためしに式を変形し x={(b x)^1/(n+1) +(c x)^1/(m+1) - d}/a として、たとえば a,b,c,dがA1, B1, C1, D1に代入されており E1:=((B1*F1)^1/(n+1)+(C1*F1)^1/(m+1) -D1)/A1 F1:=E1 として循環参照をさせ、反復回数100、精度0.0001に設定し計算したところ どちらのセルも計算されず、#NUM となってしまいました。 (d=0のときのみx=0と計算できました。) a~d及び指数のn,mの数値の範囲は以下です。 a:0.04-0.07 b:90-100 c:70-90 d:0-100 n::0.157 m:0.352 ニュートン法を用いると負のべき乗または負の指数を計算することになって#NUMとなってうまくいきません。この問題をどうにか回避して計算する方法をご存知の方、ご教示いただきたくお願いします。

  • 4次方程式の解

    x^4-4x-1=0 の実数解と虚数解を求めよ。 因数定理は使えない。 (x^2+ax+b)(x^2+cx+d)=0 と与式をおく。a,b,c,dは実数 展開して、係数を比較すると (1)bd=-1 (2)a+c=0 (3)ac+b+d=0 (4)ad+bc=-4 これから、a,b,c,dを求めてと思いましたが、できませんでした。 (1)から(4)の式から1つの文字だけの方程式はできるが、それが解けない。 かえって、与方程式を解くよりむずかしい。 よろしくアドバイスおねがいします。

  • 4次方程式の解についての問題

    f(x)=x^4-kx^2+4x+k+3で、f(x)=0が異なる4つの実数解をもち、4つの解a,b,c,dをa<b<c<dとする。 a+c+dとacdをそれぞれkを用いて表せ。(慶応理工 今年) f(x)=(x+1){x^3-x^2+(1-k)x+k+3}だから、1つの解は-1とわかる。 f(x)=0から、k=x^2+1-{4/(x+1)}となり、g(x)=x^2+1-{4/(x+1)}のグラフから、c=-1。 x^3-x^2+(1-k)x+k+3=0の解が、a,b,dとなり解と係数から、 a+b+d=1・・(1) ab+bd+da=1-k・・・(2) abd=-k-3・・・(3) (1)(2)(3)からa+dとadをkの式で表せればよいと思いましたが、できませんでした。 アドバイスをよろしくお願いします。 因みにこのあとに続きの問いがあって、k->∞のとき、bcの値の極限値を求めよ、これは グラフから考えて、b->-1 だから、1になりました。