java求解方程组代码 java解析数学算式

用Java语言编写求解一元二次方程的解,方程系数从键盘输入若a为零输出1)简介
一元二次方程 ax2+bx+c=0 的a、b、c三个参数由用户自行定义 , 通过该程序输出该一元二次方程的根 。
对于该程序需要在“应声虫”的基础上进行参数的自定义,在定义完成后需要通过求根公式实现结果的输出,其中Math.sqrt()为对括号的内容进行开平方根 。
2)任务代码
关于该程序的代码如下:
import java.util.Scanner;//导入java.util包下的Scanner类
public class Test2{//类名
public static void main(String[] args) {//程序主入口函数,带命令行参数
System.out.print("求ax^2+bx+c=0的根"+"\n");//输出标题
Scanner in=new Scanner(System.in);//创建scanner,控制台会一直等待输入 , 直到敲回车结束
System.out.print("请输入a的值:");//输出“提示”
int a=in.nextInt();//用户可自行定义a的值
System.out.print("请输入b的值:");//输出“提示”
int b=in.nextInt();//用户可自行定义b的值
System.out.print("请输入c的值:");//输出“提示”
int c=in.nextInt();//用户可自行定义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);//输出两个根的结果
}
}
3)运行结果
使用LICEcap进行动图的制作,运行结果动图如下:
用JAVA定义一个一元二次方程?以下是定义一元二次方程类、封装系数及其求根方法的示例代码:
public class Equation {
private double a;
private double b;
private double c;
// 封装系数
public void setA(double a) {
this.a = a;
}
public double getA() {
return a;
}
public void setB(double b) {
this.b = b;
}
public double getB() {
return b;
}
public void setC(double c) {
this.c = c;
}
public double getC() {
return c;
}
// 求根方法
public void solve() {
double delta = b * b - 4 * a * c;
if (delta0) {
double x1 = (-b + Math.sqrt(delta)) / (2 * a);
double x2 = (-b - Math.sqrt(delta)) / (2 * a);
System.out.println("方程的两个解分别为:" + x1 + "和" + x2);
} else if (delta == 0) {
double x = -b / (2 * a);
System.out.println("方程的解为:" + x);
} else {
System.out.println("方程无解");
}
}
}
在main()方法中定义一个一元二次方程对象并调用求根方法,可以这样写:
public static void main(String[] args) {
// 创建一个一元二次方程对象
Equation eq = new Equation();
// 设置系数
eq.setA(1);
eq.setB(2);
eq.setC(1);
// 调用求根方法
eq.solve();
}
上面的代码会输出:方程的解为:-1.0 。
怎么用java解二元一次方程?这是个二元一次方程 解出的结果应该是 x=1 y=1 代码可以这样写 用的方法是穷举 。为了节省程序运行时间 在这里把X和Y的取值定在了10以内 其实多了也没用 答案只有可能是1。穷举会按程序的意思去一一例举 占用时间较长。代码如下: public class abc { public static void main(String args[]) { for(int x=0;x10;x++) /*定义X取值*/ for(int y=0;y10;y++) /*定义Y取值*/ { if(x+y==2x*y==1) /*定义条件公式*/ System.out.println("x="+x+" y="+y); /*输出结果*/ } } }
用java语言编写追赶法求解n阶三对角方程组可以这样写,代码如下
#include "pch.h"
#include iomanip
#include iostream
# include fstream
#include iomanip
#include math.h

推荐阅读