GESP二级 - 计算多项式值:算法与代码实现
GESP二级 - 计算多项式值:算法与代码实现
问题描述
假定多项式的形式为x^n + x^(n-1) + ... + x^2 + x + 1,请计算给定单精度浮点数x和正整数n值的情况下这个多项式的值。x在float范围内,n≤1000000。多项式的值精确到小数点后两位,保证最终结果在float范围内。
输入描述
输入仅一行,包括x和n,用单个空格隔开。x在float范围内,n ≤ 1000000。
输出描述
输出一个实数,即多项式的值,精确到小数点后两位。保证最终结果在float范围内。
用例输入 1
2.0 4
用例输出 1
31.00
算法思路
可以使用循环迭代的方式计算多项式的值。从x^0开始,每次将结果加上当前的x^i,并更新i的值。
代码实现
C++
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
float x, result = 0.0;
int n;
cin >> x >> n;
float power = 1.0;
for (int i = 0; i < n; i++) {
result += power;
power *= x;
}
cout << fixed << setprecision(2) << result << endl;
return 0;
}
Python
x, n = map(float, input().split())
result = 0.0
power = 1.0
for i in range(int(n)):
result += power
power *= x
print("{:.2f}".format(result))
测试用例
| 输入 | 输出 | |---|---| | 2.0 4 | 31.00 | | 1.5 3 | 7.38 | | -1.0 5 | 0.00 |
总结
本文通过讲解多项式值的计算方法,并提供C++和Python的代码实现,旨在帮助读者理解和掌握相关算法知识。希望本文对读者有所帮助。
原文地址: https://www.cveoy.top/t/topic/qj7D 著作权归作者所有。请勿转载和采集!