c++初学者 关於 平方平方根(保留两位小数)的问题
#include<iostream>#include<iomanip>usingnamespacestd;voidsquare(doublek);intmain(){in...
#include <iostream>
#include <iomanip>
using namespace std;
void square(double k);
int main()
{
int n;
cout<<"enter a number:";
cin>>n;
square(n)
system("pause");
return 0;
}
void square(int k)
{
double l=pow(k,0.5);
double j=l*l;
cout<<setprecision(2)<<"square"<<l<<"square root"<<j<<endl;
}
输入一个数 然后计算他的平方根并4舍五入保留两位小数,,然后平方根的平方得到原来的数 也是四舍五入保留两位小数。。
比如123456 平方根是351.3630601 四舍五入得到351.36。 351.3630601 平方得到123456.00。
我写了一点但是写不下去了 不知道什麽地方出错了,,哪位会的帮帮忙吧 展开
#include <iomanip>
using namespace std;
void square(double k);
int main()
{
int n;
cout<<"enter a number:";
cin>>n;
square(n)
system("pause");
return 0;
}
void square(int k)
{
double l=pow(k,0.5);
double j=l*l;
cout<<setprecision(2)<<"square"<<l<<"square root"<<j<<endl;
}
输入一个数 然后计算他的平方根并4舍五入保留两位小数,,然后平方根的平方得到原来的数 也是四舍五入保留两位小数。。
比如123456 平方根是351.3630601 四舍五入得到351.36。 351.3630601 平方得到123456.00。
我写了一点但是写不下去了 不知道什麽地方出错了,,哪位会的帮帮忙吧 展开
3个回答
展开全部
#include <iostream>
#include <iomanip>
#include <math.h>
using namespace std;
void square(double k);
int main()
{
int n;
cout<<"enter a number:";
cin>>n;
square(n);
system("pause");
return 0;
}
void square(double k)
{
double l=/*pow(k,0.5);*/ sqrt(k);
double j=l*l;
cout <<setiosflags(ios::fixed); /*setprecision(n)与setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。*/
cout<<setprecision(2)<<"square:"<<l<<"square root:"<<j<<endl;
}
输出结果:
enter a number:123456
square:351.36square root:123456.00
#include <iomanip>
#include <math.h>
using namespace std;
void square(double k);
int main()
{
int n;
cout<<"enter a number:";
cin>>n;
square(n);
system("pause");
return 0;
}
void square(double k)
{
double l=/*pow(k,0.5);*/ sqrt(k);
double j=l*l;
cout <<setiosflags(ios::fixed); /*setprecision(n)与setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。*/
cout<<setprecision(2)<<"square:"<<l<<"square root:"<<j<<endl;
}
输出结果:
enter a number:123456
square:351.36square root:123456.00
展开全部
void square(double k) // 改用double
{
double l,j;
l =pow(k,0.5); // 或 l = sqrt(k); 头文件 #include <math.h>
j=l*l;
。。。。
}
调用
cin>>n;
square(n); // 漏了分号
保留2位小数的方法:
(double) ( (int)(l * 100.0) ) / 100.0
{
double l,j;
l =pow(k,0.5); // 或 l = sqrt(k); 头文件 #include <math.h>
j=l*l;
。。。。
}
调用
cin>>n;
square(n); // 漏了分号
保留2位小数的方法:
(double) ( (int)(l * 100.0) ) / 100.0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只要得出的数取小数点后3位,得出的另一个数乘1000,若个位上的数大于5的话就加10除1000,输出的数取前两位。算法就是这样了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询