《使用Java實現一元二次方程求根計算器》改進版
阿新 • • 發佈:2018-12-07
《使用Java實現一元二次方程求根計算器》改進版
1、任務簡介
我在2018年5月21日寫過一篇文章《使用Java實現一元二次方程求根計算器》,但是該計算器對於一元二次方程的計算只侷限於整型變數,對於帶有小數的一元二次方程就無計可施了,所以今天就對它進行改進。
2、程式程式碼
1)改進方法
在5月21日的程式中,我對於使用者輸入資訊的語句為 int a=in.nextInt();所以造成了只能對引數為整數的一元二次方程進行計算,在這裡我將這條語句改為double a=in.nextDouble();就實現了對於引數為小數的一元二次方程的計算,除此之外還還可以定義死迴圈在不重新執行程式的情況下實現對多個方程的計算;
2)程式碼
關於該程式的程式碼如下:
//編寫程式求ax^2+bx+c=0的根
import java.util.Scanner;//匯入java.util包下的scanner類
public class Getroot {//類名
public static void main(String[] args) {//程式主函式
while(true){//定義死迴圈
System.out.print("求ax^2+bx+c=0的根"+"\n");//資訊提示
Scanner in=new Scanner(System.in);//建立scanner,控制檯會一直等待輸入,直到敲回車結束
System.out.print("請輸入a的值:");//輸出
double a=in.nextDouble();//使用者可自行定義a的值
System.out.print("請輸入b的值:");//輸出
double b=in.nextDouble();//使用者可自行定義b的值
System.out.print("請輸入c的值:");//輸出
double c=in.nextDouble();//使用者可自行定義c的值
double x1=((-b+Math.sqrt(b*b-4*a*c))/(2*a));//運用求根公式,並且Math.sqrt()為開平方根
double x2=((-b-Math.sqrt(b*b-4*a*c))/(2*a));//運用求根公式,並且Math.sqrt()為開平方根
System.out.print("x1="+x1+"\n"+"x2="+x2+"\n");//輸出兩個根的結果
System.out.println(" ");//格式調整
}
}
}
3)執行結果
具體結果可以自行復制程式碼使用,我就只截一張靜態圖了,如下:
3、結語
很長一段時間沒有更新部落格了,在對工程訓練任務進行重新學習時發現本程式可以改進,所以將改進版分享給大家。