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的代码实现,旨在帮助读者理解和掌握相关算法知识。希望本文对读者有所帮助。

GESP二级 - 计算多项式值:算法与代码实现

原文地址: https://www.cveoy.top/t/topic/qj7D 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录