输出该数列的和,每个测试实例占一行,要求精度保留2位小数。
保留两位小数
#include <iomanip>
cout<<setiosflags(ios::fixed);
cout<<setprecision(2)<<sum<<endl;
cout<<setiosflags(ios::left)<<'s'<<setw(8)<<'a'<<endl;//左对齐 输出间隔8
时间限制:C/C++语言 2000MS;其他语言 4000MS
内存限制:C/C++语言 32768KB;其他语言 557056KB
内存限制:C/C++语言 32768KB;其他语言 557056KB
题目描述:
数列的定义如下:
数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。
输入
输入数据有多组,每组占一行,由两个整数n(n<10000)和m(m<1000)组成,n和m的含义如前所述。
样例输入
81 4
2 2
样例输出
94.73
3.41
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
void shuliehe(int n,int m)
{
float sum = n;
float temp = n;
for(int i=1;i<m;i++)
{
temp = sqrt(temp);
sum = sum + temp;
}
cout<<setiosflags(ios::fixed);
cout<<setprecision(2)<<sum<<endl;
}
int main()
{
int a[100];
int countn=0;
int n,m;
while(cin>>n>>m && countn<50)
{
if(!(n<10000 && n>=0) && !(m<1000 && m>0))
{
cout<<"输入0<=n<10000,0<m<1000"<<endl;
return 0;
}
a[countn*2]=n;
a[countn*2+1]=m;
countn++;
}
for(int i=0;i<countn;i++)
shuliehe(a[i*2],a[i*2+1]);
return 0;
}