求数列的和
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 65636 Accepted Submission(s): 40054
Problem Description
数列的定义如下:
数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。
数列的第一项为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
Recommend
方式一:
#include <stdio.h>
#include <math.h>
int main()
{
int m;
double n,sum;
while (scanf("%lf %d",&n,&m)!=EOF)
{
sum=0;
while(m--)
{
sum+=n;
n=sqrt(n);
}
printf("%.2lf\n",sum);
}
return 0;
}
方式二:
#include <stdio.h>
#include <math.h>
int main ()
{
double i,n,m,sum;
while (scanf("%lf %lf",&n,&m)!=EOF)
{
sum=n;
for (i=1;i<m;i++)
{
n=sqrt(n);
sum+= n;
}
printf("%.2lf\n",sum);
}
}
其实两种方法的本质是一样的!

本文介绍了如何通过编程实现数列求和的功能,包括输入数列的起始值和项数,输出数列的前m项之和。通过两种方法实现了这一功能,详细解释了算法的实现过程和代码细节。

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



