回 帖 发 新 帖 刷新版面

主题:紧急,一元三次方程求解!!!

[问题描述]有形如ax3+bx2+cx+d=0这样的一个一元三次方程。
给出该方程中各项的系数(a,b,c,d均为实数),并约定该方程存在
三个不同实根(根的范围在-100至100之间),且根与根之差的绝
对值大于或等于1。要求由小到大依次在同一行输出这三个实根
(根与根之间留有空格),并精确到小数点后两位。
提示:记方程f(x)=0,若存在两个数x1和x2
            且x1<x2,f(x1)*f(x2)<0,则在(x1,x2)区间上一定有一个根。
[样例]   输入    1  -5  -4  20
             输出    -2.00   2.00   5.00

回复列表 (共14个回复)

11 楼

好难,小学生不懂
[em8][em8][em8]

12 楼

应该可以用公式的,下面是我去年编的

var x,y,m,n:real;
begin
     writeln('x^3+mx=n');
     write('Input m:');
     readln(m);
     write('Input n:');
     readln(n);
     y:=sqrt(n*n/4+m*m*m/27);
     x:=exp((y+n/2)*ln(1/3))-exp((y-n/2)*ln(1/3));
     writeln('x=',x:0:12);
     readln;
end.

13 楼

换底公式

14 楼

我的还是一五次啊!谁能帮我

我来回复

您尚未登录,请登录后再回复。点此登录或注册