用java编!!从键盘输入三个整型数,其分别为一元二次方程ax2+bx+c=0中a,b,c的值,判断此方程有无实数根,

2024-11-23 13:47:01
推荐回答(2个)
回答1:

以下程序在jdk5.0测试通过
import java.util.Scanner;

public class Test {

//一元二次方程式解法
private static X fx (int a,int b,int c) throws Exception{
X x = new X();
double m = b*b - 4*a*c;
if(m>=0){
x.x1=(-1*b+Math.sqrt(m))/(2*a);
x.x2=(-1*b-Math.sqrt(m))/(2*a);
return x;
}
else throw new Exception("无解");

}

public static void main(String[] args) {

try{
//输入参数a,b,c
Scanner cin=new Scanner(System.in);
System.out.print("a=");
int a = cin.nextInt();
System.out.print("b=");
int b = cin.nextInt();
System.out.print("c=");
int c = cin.nextInt();

//计算
X x=fx(a,b,c);

//显示
System.out.println("\n1x1="+x.x1+"\nx2="+x.x2);

}catch(Exception e){
System.out.println(e.getMessage());
}
}

}

//一元二次方程解集包装类
class X{
double x1;
double x2;
}

回答2:

一、知识要点对于一元二次方程ax2+bx+c=0 (a≠0) 总有 x1+x2=- ,x1·x2= ,其中x1、x2是方程的两根。
它的逆定理也是成立的,即如果两个数x1和x2,满足x1+x2=- ,x1·x2= ,那么x1, x2是方程ax2+bx+c=0 (a≠0)的两个根.这是根与系数的关系定理,又称韦达定理.
二、例题分析
1、已知一元二次方程的一个根,求出另一个根以及字母系数的值
例1、已知方程x2-6x+m2-2m+5=0一个根为2,求另一个根及m的值
分析:本题通常有两种做法,一是根据方程根的定义,把x=2代入原方程,先求出m的值,再通过解方程求另一个根;二是利用一元二次方程的根与系数的关系求出另一个根及m的值.
解法一:把x=2代入原方程,得
22-6×2+m2-2m+5=0
即 m2-2m-3=0
解得m1=3 m2=-1
当m1=3 m2=-1时,原方程都化为
x2-6x+8=0
∴x1=2 x2=4
∴方程的另一个根为4,m的值为3或-1.
解法二:设方程的另一个根为x.

∴ 或