十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
package wukong.xiyou;
成都创新互联公司是一家专注于成都做网站、成都网站设计与策划设计,蚌埠网站建设哪家好?成都创新互联公司做网站,专注于网站建设10多年,网设计领域的专业建站公司;建站业务涵盖:蚌埠等地区。蚌埠做网站价格咨询:13518219792
public class SquraEquation {
public double Calculation(double num){
return Math.sqrt(num);
}
}
class SunRise{
public static void main(String[] args) {
SquraEquation se = new SquraEquation();
double root = se.Calculation(4);
System.out.println(root);
}
}
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()函数
import java.math.*;
public class demo{
/*
*
定义构造函数,写入A,B,C的值.
*/
private int a,b,c;
private Vector vector;
public demo(int a,int b,int c){
this.a = a;
this.b = b;
this.c = c;
}
public Vector test(){
if(b*b4*a*c){
System.out.println("无跟");
vector.add("空");
}
else if(b*b=4*a*c){
int i = (-b-cbrt(b^2-4*a*c))/2/a
System.out.println("只有一个根"+i);
vector.add(i);
}
else if(b*b4*a*c){
double x1=(-b-cbrt(b^2-4*a*c))/2/a
double x2=(-b+cbrt(b^2-4*a*c))/2/a
vector.add(x1);
vector.add(x2);
}
}
}
应该就是这个样子,我印象中写的,没有调试,你按照这个思路去改改
准确的说:是错在了
System.out.println("方程的1根是"+aa.calculator1());
System.out.println("方程的2根是"+aa.calculator2());
这两句上,因为无法从静态上下文中引用非静态 变量a,b,c,因为你没在double 前声明static ,所以无法引用到a,b,c,的值.即使你在前加了static (static double a,b,c)下面main函数里引用的都为0.0
现修改如下:
import java.math.*;
public class Function
{
public static boolean boo;//------------------------------声明全局变量,再在函数内运算
static double a,b,c,x;
public static double p;
public Function(double a,double b,double c)
{
this.a=a;
this.b=b;
this.c=c;
p=b*b-4*a*c;
if(p=0)
{
// c=a*x*x+b*x;
boo=true;
}
else
{
// System.out.println("方程无实根");
boo=false;
}
}
double calculator1()
{
double s1;
s1=((-b)-Math.sqrt(p))/(2*a);
return s1;
}
double calculator2()
{
double s2;
s2=((-b)+Math.sqrt(p))/(2*a);
return s2;
}
public static void main(String args[])
{
Function aa=new Function(2.0,6.0,3.0);
//System.out.println(boo);
System.out.println(b);//你可以多写这样的语句进行测试
if(boo)
{
System.out.println("方程的1根是"+aa.calculator1());
System.out.println("方程的2根是"+aa.calculator2());
}
else
{
System.out.println("方程无实根");
}
}
}
运行结果://true
//6.0
方程的1根是-2.3660254037844384
方程的2根是-0.6339745962155614
哈哈,总之是static没用好,给分吧快。