练习-Java分支结构综合练习一之一元二次方程求解
任务描述
本关任务:变量a、b、c分别为方程ax2+bx+c=0中a、b、c的值,求解该一元二次方程的值,将该值四舍五入后保留两位小数后输出。
判断方程有几个根:
Δ=b2−4ac 若Δ>0,则该方程有两个根,若Δ=0,则该方程只有一个跟,若Δ<0,则该方程无解。
ax2+bx+c=0的求值公式为:
2a−b±b2−4ac
若方程有两个根,将这两个值四舍五入后保留两位小数,输出格式为:
该方程有两个根x1 = x1,x2 = x2
注意:x1 为2a−b+b2−4ac的值,x2 为2a−b−b2−4ac的值,且两个值中间的逗号为中文逗号。
若只有一个跟,输出格式:
该方程只有一个根x = x
若方程无解,输出格式:
该方程无解
编程要求
仔细阅读右侧编辑区内给出的代码框架及注释,按照提示编写程序代码。
import java.util.Scanner;/*** 任务:求解该方程的值。* 类名为:Equation*/public class Equation {public static void main(String[] args) {Scanner reader = new Scanner(System.in); double a = reader.nextDouble();double b = reader.nextDouble();double c = reader.nextDouble();// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码/********** Begin **********/// 第一步:判断方程有几个根double t = b*b-4*a*c;// 第二步:如果方程有两个根,计算这两个值,将其按照题目所给的格式输出if(t>0){double x1 = ((-b) + Math.sqrt(t))/(2*a);double x2 = ((-b) - Math.sqrt(t))/(2*a);System.out.println("该方程有两个根");System.out.printf("x1 = %.2f,x2 = %.2f",x1,x2);}// 第三步:如果方程只有一个跟,计算出该值,将其按照题目所给的格式输出 else if(t==0){double x = (-b)/(2*a);System.out.println("该方程只有一个根");System.out.printf("x = %.2f",x);}// 第四步:若方程无解,将其按照题目所给的格式输出else{System.out.print("该方程无解");}/********** End **********/}
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
