2010 水仙花数
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int m,n;
int a,b,c;
while(cin >> m >> n)
{
bool flag = false;
if(m>n) swap(m,n);
if(m<100 || n>999) break;
for(int i=m;i<=n;i++)
{
a=i/100;
b=(i%100)/10;
c=(i%100)%10;
if(pow(a,3)+pow(b,3)+(pow(c,3))==i)
{
if(flag) cout << " ";
cout << i;
flag = true;
}
}
if(flag==false) cout << "no";
cout << endl;
}
return 0;
}
注意:输出的两个数之间有空格,最后一个数之后没有空格。
2011 多项式求和
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int m,n;
double sum;
cin >> m;
while(m--)
{
cin >> n;
sum = 0;
for(int i=1;i<=n;i++)
{
if(i%2==1)
sum += 1.0/i;//一定要用1.0不能用1
else
sum -= 1.0/i;
}
cout << fixed << setprecision(2) << sum << endl;
}
return 0;
}
注意:为了得到double类型数值,必须用1.0除以i,而不能用1去除。