多项式求和Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 111967 Accepted Submission(s): 63078 Problem Description 多项式的描述如下:
Input 输入数据由2行组成,首先是一个正整数m(m<100),表示测试实例的个数,第二行包含m个正整数,对于每一个整数(不妨设为n,n<1000),求该多项式的前n项的和。
Output 对于每个测试实例n,要求输出多项式前n项的和。每个测试实例的输出占一行,结果保留2位小数。
Sample Input 2 1 2
Sample Output 1.00 0.50 |
c语言如下
#include<stdio.h>
int main()
{
int m,n;
double sum=0;
while((scanf("%d",&m)!=EOF))
{
for(int i=0;i<m;i++)
{
sum=0;
scanf("%d",&n);
for(int j=1;j<=n;j++)
{
if(j%2==1)
sum+=1.0/j;
if(j%2==0)
sum-=1.0/j;
}
printf("%.2lf\n",sum);
}
}
return 0;
}
c++如下
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int m,n,i;
double sum;
while(cin>>m&&m<100)
{
while(m--)
{
sum=0;
cin>>n;
for(i=1;i<=n;i++)
{
if(i%2!=0)
sum+=1.0/i;
else
sum-=1.0/i;
}
cout<<fixed<<setprecision(2)<<sum<<endl;
}
}
return 0;
}