练习-Java分支结构综合练习一之一元二次方程求解

任务描述

本关任务:变量abc分别为方程ax2+bx+c=0中abc的值,求解该一元二次方程的值,将该值四舍五入后保留两位小数后输出。

判断方程有几个根:

Δ=b2−4acΔ>0,则该方程有两个根,若Δ=0,则该方程只有一个跟,若Δ<0,则该方程无解。

ax2+bx+c=0的求值公式为:

2ab±b2−4ac​​

若方程有两个根,将这两个值四舍五入后保留两位小数,输出格式为:

 
  1. 该方程有两个根
  2. x1 = x1x2 = x2

注意:x1 为2ab+b2−4ac​​的值,x2 为2abb2−4ac​​的值,且两个值中间的逗号为中文逗号。

若只有一个跟,输出格式:

 
  1. 该方程只有一个根
  2. x = x

若方程无解,输出格式:

 
  1. 该方程无解

编程要求

仔细阅读右侧编辑区内给出的代码框架及注释,按照提示编写程序代码。

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 **********/}
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部