算法一元三次方程求解代码
时间: 2023-10-26 09:08:52 浏览: 40
这个算法使用暴力枚举的方式来求解一元三次方程的实根。具体来说,它从-100到100以0.01为步长枚举x的值,然后判断方程在该x值下是否等于0,如果是,则输出该x值作为一个实根。由于方程存在三个不同实根,因此需要枚举三次,每次枚举时需要保证当前枚举的x值与前面已经求得的实根之差的绝对值大于等于1,以保证求得的三个实根不同。
下面是该算法的Java代码:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner read = new Scanner(System.in);
double a = read.nextDouble();
double b = read.nextDouble();
double c = read.nextDouble();
double d = read.nextDouble();
read.close();
for(double i=-100;i<=100;i+=0.01) {
if(a*i*i*i+b*i*i+c*i+d <= 0.000001 && a*i*i*i+b*i*i+c*i+d >= -0.000001) {
System.out.printf("%.2f ",i);
i=i+0.95;
}
}
}
}
```