Horner規則求解多項式的值

2021-07-11 04:06:26 字數 1007 閱讀 2338

一. 目的與背景知識

1、生成乙個多項式

2、根據horner規則求解多項式的值。

偽**如下:

y=0

for i=n down to 0

y=a[i]+x*y

上述偽**即描述了求解a[0]+a[1]x^1+…+a[n] ( x ^n )

二. **實現

1、多項式展示與計算類

#include

namespace myalgorithm;

~polynomial(){};

void showpolynomial()

if (i != size - 1)

}cout

<< endl;

};void computervalue(t variable)

cout

<< sum << endl;

};};

}

2、呼叫**

#include

#include"polynomial.h"

#include"test.h"

#define n_count 10

int main()

3、結果輸出

三. 錯誤清單

1、函式未加;導致編譯不過。

2、三個原始檔cpp共同含有兩個main1方法導致編譯不過。

3、elseif結構使用導致多項式展示缺少+

4、未加停頓語句,導致視窗一閃而過。

5、對陣列位址加下標方式理解不到位。

四. 經驗總結

1、沒有加命名空間的函式,預設為std.同乙個命名空間不能有兩個相同的定義。

2、注意邏輯分支的處理。

五. 後續內容

進行陣列逆序對的練習。

多項式horner演算法學習

horner演算法描述 p x 是乙個多項式 我們希望計算x 取某個特殊值 x0時多項式的值 p x0 構造乙個序列 所以最終的求和轉換成求出 b0的值,遞迴的源頭是bn horner演算法主要在於將多次乘法運算分解成為加法運算,通過 對於計算機而言,加法運算總是比乘法來的容易。變式前的運算次數 1...

Horner規則實現多項式求值 C語言版

這裡先簡單說一下霍納規則 horner 採用最少的乘法運算策略,求多項式an x n an 1 x n 1 a1 x a0,在x0 處的值。即h x0 an x0 an 1 x0 a1 x0 a0,也就是說盡可能地提取公因數x 0以減少乘法運算次數。下面用c實現這個演算法。horner多項式求解 i...

多項式的值

時間限制 1 sec 記憶體限制 32 mb 實現乙個多項式的類 a b x c x 2 d x 3 要求輸入該多項式的係數和x 的值後列印出這個多項式的值。輸入第一行為樣例數m,對於每個樣例,第一行為多項式最高項次數n,接下來n 1個整數表示每項係數,最後乙個整數x,n不超過10。輸出m行,表示個...