多项式求和(hud2011)
2009-09-19 14:27
417 查看
http://acm.hdu.edu.cn/showproblem.php?pid=2011
#include <iostream>
#include <math.h>
#include <iomanip>
using namespace std;
int main()
{
int i,j;
unsigned m,n,a[100];
cin>>m;
if(m<100&&m>0)
for(int i=0;i<m;i++)
{
cin>>n;
if(n>0&&n<1000)
a[i]=n;
}
for(i=0;i<m;i++)
{
double sum=0;
for (j=1;j<=a[i];j++)
if (j%2==0)
sum+=(-1)*1.0/j;//又在这里犯错了,注意小数啊
else
sum+=1.0/j;
cout<<setiosflags(ios::fixed)<<setprecision(2)<<sum<<endl;
}
return 0;
}
问题解决:编译时老是出现
2
1 2
1.00
1.00
原因是sum+=(-1)*1.0/j;语句错写成sum+=(-1)*1/j;导致去掉了+.05而结果变成1.00
仔细点。
#include <iostream>
#include <math.h>
#include <iomanip>
using namespace std;
int main()
{
int i,j;
unsigned m,n,a[100];
cin>>m;
if(m<100&&m>0)
for(int i=0;i<m;i++)
{
cin>>n;
if(n>0&&n<1000)
a[i]=n;
}
for(i=0;i<m;i++)
{
double sum=0;
for (j=1;j<=a[i];j++)
if (j%2==0)
sum+=(-1)*1.0/j;//又在这里犯错了,注意小数啊
else
sum+=1.0/j;
cout<<setiosflags(ios::fixed)<<setprecision(2)<<sum<<endl;
}
return 0;
}
问题解决:编译时老是出现
2
1 2
1.00
1.00
原因是sum+=(-1)*1.0/j;语句错写成sum+=(-1)*1/j;导致去掉了+.05而结果变成1.00
仔细点。
相关文章推荐
- 杭电oj 2011 多项式求和
- HDOJ 2011 多项式求和
- HDOJ 2011 多项式求和
- C++ hdoj 2011 多项式求和
- HDOJ 2011 多项式求和
- HDU-2011(多项式求和)
- HDU ACM 2011 多项式求和
- 多项式求和(2011)
- 杭电ACM 2011 多项式求和 (C++)
- 杭电ACM 2011多项式求和-----20140724
- hdu 2011多项式求和 20140729.cpp
- hdu_2011多项式求和
- hdu 2011 多项式求和
- 2011 多项式求和
- HDU 2011 多项式求和
- ACM-2011 多项式求和
- java hdu2011多项式求和
- HDOJ 2011 多项式求和
- HDOJ2011 多项式求和
- hdu 2011 多项式求和(java)