题目要求
求以下三数的和,保留2位小数 1~a之和 1~b的平方和 1~c的倒数和
输入
a b c
输出
1+2+...+a + 1^2+2^2+...+b^2 + 1/1+1/2+...+1/c
样例输入复制
100 50 10
样例输出复制
47977.93
解题思路
较为简单的求和题目,作者使用的是C++,在此题中学到的的是
关于c++中如何使用cout格式化输出,这是作者没有涉及过的知识点。
解题代码
//求以下三数的和,保留2位小数 1~a之和 1~b的平方和 1~c的倒数和
#include <iostream>
#include <iomanip>
using namespace std;
int main(){
double a,b,c;
cin>>a>>b>>c;
for (int i = a-1; i >= 1 ; --i) {
a+=i;
}
//cout<<fixed<<setprecision(2)<<a<<endl;
double sum = 0;
for (int i = b; i >=1 ; --i) {
sum+=i*i;
}
//cout<<fixed<<setprecision(2)<<sum<<endl;
double sum1 = 0;
for (double i = c; i >=1 ; --i) {
//这里注意循环条件里的i需要是double类型的,如果为int类型会发生精度丢失
sum1 += 1/i;
}
//cout<<fixed<<setprecision(2)<<sum1<<endl;
cout<<fixed<<setprecision(2)<<sum1+sum+a<<endl;
}
C++中cout格式化输出参考资料:http://c.biancheng.net/view/7578.html