/*
*
*Problem Description
*数列的定义如下:
*数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。
*
*
*Input
*输入数据有多组,每组占一行,由两个整数n(n<10000)和m(m<1000)组成,n和m的含义如前所述。
*
*
*Output
*对于每组输入数据,输出该数列的和,每个测试实例占一行,要求精度保留2位小数。
*
*
*Sample Input
*81 4
*2 2
*
*
*Sample Output
*94.73
*3.41
*
*
*Author
*lcy
*
*
*Source
*C语言程序设计练习(二)
*
*
*Recommend
*JGShining
*
*/
#include<iostream>
using namespace std;
double sqrt(double num) {
double temp;
for (temp = 0; temp*temp <= num; temp += 1);
temp -= 1;
for (int i = 0; i < 5; i++) {
temp = (temp + num / temp) / 2;
}
return temp;
}
int main() {
double n, m;
double sum = 0;
while (cin >> n >> m) {
sum = n;
for (int i = 0; i < m - 1; i++) {
sum += sqrt(n);
n = sqrt(n);
}
printf("%.2f\n",sum);
}
system("pause");
return 0;
}
hdu_problem_2009_数列求和
最新推荐文章于 2022-02-27 18:57:48 发布
本文介绍了一种数列求和的算法实现,数列的第一项为n,之后每一项为前一项的平方根,目标是求出数列的前m项的和。通过自定义平方根函数并使用迭代方法逼近真实值,最终计算出数列的和,并保留两位小数的精度。
1926

被折叠的 条评论
为什么被折叠?



