資訊學奧賽一本通 1012:計算多項式的值 | OpenJudge NOI 1.3 07
一、 題目連結
ybt 1012:計算多項式的值
OpenJudge NOI 1.3 07:計算多項式的值
二、 題目考點
- 計算表示式書寫
瞭解*的運算優先順序比+高。
瞭解()可以改變運算優先順序 - 輸出浮點型數字a保留x位小數的寫法:
cout<<fixed<<setprecision(x)<<a;
printf("%.xf", a);
- 浮點型量的精度
float 單精度浮點型,可以表示6~7位有效數字
double 雙精度浮點型,可以表示15~16位有效數字
本題要輸出小數點後7位,為保險起見,選用double型別 - (擴充套件)秦九韶演算法
三、題解程式碼
解法1:普通解法。使用cin, cout進行輸入輸出。
#include <bits/stdc++.h>
using namespace std;
int main()
{
double x, a, b, c, d;
cin>>x>>a>>b>>c>>d;
cout<<fixed<<setprecision(7)<<a*x*x*x+b*x*x+c*x+d;
return 0;
}
解法2:普通解法。使用scanf, printf進行輸入輸出
#include <bits/stdc++.h>
using namespace std;
int main()
{
double x, a, b, c, d;
scanf("%lf %lf %lf %lf %lf", &x, &a, &b, &c, &d);
printf("%.7f", a*x*x*x+b*x*x+c*x+d);
return 0;
}
解法3:使用秦九韶演算法
- 可以減少相乘次數,也可以減少表示式長度
#include <bits/stdc++.h>
using namespace std;
int main()
{
double a, b, c, d;
cin>>x>>a>>b>>c>>d;
cout<<fixed<<setprecision(7)<<x*(x*(a*x+b)+c)+d;
return 0;
}
相關文章
- 資訊學奧賽一本通 1035:等差數列末項計算 | OpenJudge NOI 1.3 18
- 資訊學奧賽一本通 1010:計算分數的浮點數值 | OpenJudge NOI 1.3 05
- 資訊學奧賽一本通 1029:計算浮點數相除的餘 | OpenJudge NOI 1.3 11
- 資訊學奧賽一本通 1051:分段函式 | OpenJudge NOI 1.4 13函式
- 資訊學奧賽一本通 1016:整型資料型別儲存空間大小 | OpenJudge NOI 1.2 01資料型別
- 資訊學奧賽一本通 1018:其他資料型別儲存空間大小 | OpenJudge NOI 1.2 03資料型別
- 36:計算多項式的值
- C++奧賽一本通貪心題解C++
- 演化計算(例項:多峰函式最值) (轉)函式
- 資訊學奧賽--C語言筆記(一)C語言筆記
- Excel函式應用例項:折舊值計算(轉)Excel函式
- 一元稀疏多項式加減法計算器
- java的多項式的加減乘除和賦值Java賦值
- 多項式學習筆記筆記
- 資訊學競賽中計算結果對 $10^9+7$ 取餘數的原因
- 一本通俗版的計算機原理計算機
- 33:計算分數加減表示式的值
- 資訊保安鐵人三項賽--資質賽writeup
- 1007:計算(a+b)×c的值(C C++)C++
- Excel函式應用例項:計算零存整取未來值(轉)Excel函式
- 多項式
- Vijos1680距離/openjudge2988計算字串的距離[DP]字串
- 【Mysql學習】算術運算及字串,數值函式MySql字串函式
- 【Mysql 學習】算術運算及字串,數值函式MySql字串函式
- 題解0014:信奧一本通1472——The XOR Largest Pair(字典樹)AI
- 【計算機演算法】 求字首表示式的值計算機演算法
- 陣列操作,計算組元素的極值函式陣列函式
- BZOJ 3456: 城市規劃 [多項式求逆元 組合數學 | 生成函式 多項式求ln]函式
- 一個數學表示式的計算
- 《初級會計電算化應用教程(金蝶KIS專業版)》——1.3電算化會計資訊系統
- Noi2011 : 智慧車比賽
- 分散式計算如果學習分散式
- 1269 匈牙利遊戲 2012年CCC加拿大高中生資訊學奧賽遊戲
- 07:函式之函式的引數和返回值函式
- Python學習之函式返回多個值Python函式
- 函式計算支援 MySQL 例項繫結函式MySql
- 平行計算π值
- Python學習記錄_基本統計值計算Python