求解一元二次方程
(一)编程实现
- 首先我们要知道 ax²+bx+c=0,a ≠ \ne = 0
- 用户来输入系数a,b,c,计算方程的实数根,那么∆ ≥ \ge ≥ 0
- x₁= -b + 根号下b²-4ac/2a,x₂= -b - 根号下b²-4ac/2a
- 分析:
- 当 ∆ > \gt > 0时,方程有两个不相等的实数根
- 当 ∆ = 0时,方程有两个相等的实数根
- 当 ∆ < \lt < 0时,方程无解
- 提示用户a
≠
\ne
= 0
(二) 代码如下
package net.hui.p01.t01;
import java.util.Scanner;
/**
* 功能: 求解一元二次方程
* 作者:贾慧琳
* 日期:2022年06月05日
*/
public class Epuation_01 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("a = ");
int a = sc.nextInt();
System.out.print("b = ");
int b = sc.nextInt();
System.out.print("c = ");
int c = sc.nextInt();
double delta=b*b-4*a*c;
if (a == 0) {
System.out.println("温馨提示:a不能为0!");
return;
} else if (delta > 0 ) {
double x1 = (-b+Math.sqrt(b*b-4*a*c))/(2*a);
double x2 = (-b-Math.sqrt(b*b-4*a*c))/(2*a);
System.out.println("方程有两个实数跟:");
System.out.println("x1= "+x1);
System.out.println("x2= "+x2);
} else if (delta == 0) {
double x1 = -b/(2*a);
System.out.println("方程只有一个实根:x1=x2="+x1);
}else {
System.out.println("方程没有实数根~");
}
}
}
(三)运行程序,查看结果
1、方程有两个实数根
2、方程有两个相等的实数根
3、方程无解
4、提示用户a不能为0