「Java解方程教学」解方程 教学
本篇文章给大家谈谈Java解方程教学,以及解方程 教学对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
如何用java编写一元二次方程的求根问题
import java.util.Scanner;
public class 一元二次方程 {
public static void main(String[] args) {
System.out.println("请输入你一元二次方程的a,b,c");
Scanner input=new Scanner(System.in);
int a=input.nextInt();
int b=input.nextInt();
int c=input.nextInt();
double d=b*b-4*a*c;
double e,f;
if (d==0){
System.out.println("这是个完全平方");
e=f=-b/2*a;
System.out.print(e);
}
else if(d0) {
System.out.println("无效根");
}
else {
System.out.println("这是个不完全平方,需要用求根公式");
double g=Math.sqrt(Math.abs(b));
e=-(b+g)/2*a;
f=-(e);
System.out.println("第一根是"+e);
System.out.println("第二根是"+f);
}
}
}
这是我的运行结果
扩展资料:
利用java编程解决数学上的解方程题,我们需要把方程求解的思路写出来,然后对应到每一步具体的求解步骤上。就比如解一元二次方程,需要我们把解方程的求根公式,判断式写出,最后用代码表示出来就好了。
需要注意的是,java中有特定的包和数学函数去求解数学问题,比如求根号可以用Math.sqrt()函数,求绝对值用Math.abs()函数
Java 如何编程实现一元二次方程的求解
//求解一元二次方程ax^2+bx+c=0的实根和复根,Test类是主类
class OnceBasicQuadraticEquation //求解一元二次方程ax^2+bx+c的实根和复根的类,其中getRoot()方法求根和显示根
{
private double a; //方程的二次项系数
private double b; //方程的一次项系数
private static double c; //方程的常数项
//以上三个成员变量分别是方程的系数
OnceBasicQuadraticEquation() //无参构造方法
{
a = 0;
b = 0;
c = 0;
}
OnceBasicQuadraticEquation(double a,double b,double c) //有参构造方法
{
this.a = a;
this.b = b;
this.c = 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 double getDlt() //计算判别式Δ=b^2-4ac的值
{
double result = Math.pow(b,2) - 4 * a * c;
return result;
}
private double getRightRoot() //求解右侧较大实根的方法
{
double rightRoot = 0;
rightRoot = (-b + Math.sqrt(getDlt())) / (2 * a);
return rightRoot;
}
private double getLeftRoot() //求解左侧较小实根的方法
{
double leftRoot = 0;
leftRoot = (- b - Math.sqrt(getDlt())) / (2 * a);
return leftRoot;
}
public void getRoot() //求解并显示实根或复根的方法
{
if(a==0)
{
if(b==0)
{
if(c==0)
{
System.out.println("一元二次方程:" + getA() + "x^2+" //a、b、c全为零时,定义方程有无穷多解。
+ getB() + "x+"
+ getC() + "\t有无穷多解。");
}
else
{
//二次项和一次项系数为零,但常数项不为零,方程变为不等式,无解。
System.out.println("一元二次方程:" + getA() + "x^2+"
+ getB() + "x+"
+ getC() + "\t无解。");
}
}
else
{
//二次项系数为零,一次项系数不为零,方程是一次方程,有唯一解。
double result = 0;
result = -getC() / getB();
System.out.println("一元二次方程:" + getA() + "x^2+"
+ getB() + "x+"
+ getC() + "\t有唯一解:" + result);
}
}
else //二次项系数不为零,方程有两个实根或复根。
{
if(getDlt()==0) //判别式Δ=b^2-4ac=0,方程有两个相等实根。
{
double result = 0;
result = -getB() / (2 * getA());
System.out.println("一元二次方程:" + getA() + "x^2+"
+ getB() + "x+"
+ getC() + "\t有唯一解:" + result);
}
else if(getDlt()0) //判别式Δ=b^2-4ac0,方程有两个相异实根。
{
System.out.println("一元二次方程:" + getA() + "x^2+"
+ getB() + "x+"
+ getC() + "\t有两个实根:" + getLeftRoot() + "和" + getRightRoot());
}
else //判别式Δ=b^2-4ac0,方程有两个复根。
{
//double imaginaryNumber1 = 0;
double imaginaryNumber = 0;
double realNumber = 0;
imaginaryNumber = Math.sqrt(-getDlt()) / (2 * a);
realNumber = -getB() / (2 * a);
System.out.println("一元二次方程:" + getA() + "x^2+"
+ getB() + "x+"
+ getC() + "\t有两个复根:"
+ realNumber + "±" + imaginaryNumber + "i");
}
}
}
}
public class Test
{
public static void main(String [] args)
{
OnceBasicQuadraticEquation e1 = new OnceBasicQuadraticEquation(4,13,3);
e1.getRoot();
}
}
怎样用java觖二元一次方程
实现思路就是将满足条件的所有的条件进行循环判断,当满足条件的时候直接跳出循环。
public static void main(String[] args) throws IOException {
double x = 0;
double y = 0;
for(double i = 0; i 2; i = i + 1){
x = i;
y = 2 - x;
if(条件){//此条件就是二元一次方程的算式,可以通过符进行连接
System.out.println(x);
break;
}
}
}
备注:此方法有具有局限性,如果是两组值的话,只能获取一组,所以java的开发有些时候也不是所有的功能都能很方便实现的。
怎么用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 如何解方程
我估计需要你先手动操作。
虽然我不知道dp是啥但是我觉得这个可以化成n=XXX的代数式。
然后调用java的算术和Math里面的log之类的把结果算出来。
假如你是希望写个java程序分析你的题目然后自己给出n=XXX的代数式然后再把它算出来的话,那就要比较麻烦了
-----------------
附,如果dp跟Dp是一样的当做一个未知量的话那我可以帮你手动算算。
20=2*(1-r)²,那么1-r=√10,然后带入第三个式子得出n=log√10(1.25)
public class t{
public static void main(String[] args){
System.out.println(Math.log(1.25)/Math.log(Math.sqrt(10)));
}
}
然后算出来等于0.1938200260161128
关于Java解方程教学和解方程 教学的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。