4 2 多項式求值 15分

2021-07-15 07:39:04 字數 591 閱讀 2390

函式介面定義:

double f( int n, double a, double x );

其中n是多項式的階數,a中儲存係數,x是給定點。函式須返回多項式f(x)的值。

很自然的就會反應出一種愚蠢的解法,是這樣的想法:

double f( int n, double a, double x)

}

這種解法如此自然,還能得到有效直接,因為c語言函式庫中有直接求n次方的函式,直接呼叫就好了嘛!

但是這種解法會在某些測試點通不過。

改正如下:

double f ( int n, double a[ ], double x )

return

sum;

}

對比兩種解法可知,後一種解法的乘法少了很多次。其實是用num變數,保留了上一次已經乘過的結果。

如5的9次方,第一種解法會在求過5的8次方後,進入下一輪迴圈時,還會從頭到尾再老老實實乘一遍。。。做人如此老實當然沒問題,解題如此就太耗時間了。

第二種解法很明顯就用num保留了5的8次方,在求5的9次方時,只需要再進行一次乘法即可。

4 2 多項式求值 15分

本題要求實現乙個函式,計算階數為n,係數為a 0 a n 的多項式f x sum a i times x i f x i 0 n a i x i 在x點的值。double f int n,double a,double x 其中n是多項式的階數,a中儲存係數,x是給定點。函式須返回多項式f x 的值...

4 2 多項式求值 15分

本題要求實現乙個函式,計算階數為n,係數為a 0 a n 的多項式f x sum a i times x i f x i 0 n a i x i 在x點的值。double f int n,double a,double x 其中n是多項式的階數,a中儲存係數,x是給定點。函式須返回多項式f x 的值...

4 2 多項式求值 15分

本題要求實現乙個函式,計算階數為n,係數為a 0 double f int n,double a,double x 其中n是多項式的階數,a中儲存係數,x是給定點。函式須返回多項式f x 的值。include define maxn 10 double f int n,double a,double...