列舉暴搜 NOIP2001 一元三次方程求解

2022-05-21 03:32:59 字數 537 閱讀 9718

第一題:一元三次方程求解

(p1.pas p1.in p1.out)

問題描述

輸入:1   -5   -4   20

輸出:-2.00   2.00   5.00

這一題資料範圍是-100~100,保留小數小數點後兩位,也就是20000的範圍,所以暴力列舉輕鬆過

唯一值得注意的是,浮點數a和b判斷相等不能之久用 a=b 判斷,浮點數必定會有誤差,要用 fabs(a-b)<1e-6 來判斷

c++ code

#include#include//fabs()函式標頭檔案

#include#includedouble a,b,c,d;

double ans[10];

double f(double x)

double findans(double l,double r)

}int main()

for(int j=1;j

NOIP2001提高組 一元三次方程求解

有形如 ax3 bx2 cx d 0 這樣的乙個一元三次方程。給出該方程中各項的係數 a,b,c,d 均為實數 並約定該方程存在三個不同實根 根的範圍在 100至100之間 且根與根之差的絕對值 1。要求由小到大依次在同一行輸出這三個實根 根與根之間留有空格 並精確到小數點後2位。一行,4個實數a,...

一元三次方程重根判別式 如何求一元三次方程

我們知道,一元二次方程 一元三次方程 1 為了解最初的方程,我們可以先考慮將方程變形成 2 這個形式可以進一步化簡。回顧一元二次方程的求根公式,我們採用的是配方法,將其變成和的平方的形式然後開方即可得到求根公式,這裡最高次是3次,所以我們可以考慮配立方。因為 和1中的式子比較發現,我們可以把 這項併...

一元三次方程求解

有形如 ax 3 bx 2 cx d 0這樣的乙個一元三次方程。給出該方程中各項的係數 a,b,c,d均為實數 並約定該方程存在三個不同實根 根的範圍在 100至100之間 且根與根之差的絕對值 1。要求由小到大依次在同一行輸出這三個實根 根與根之間留有空格 並精確到小數點後2位。輸入有多行測試資料...