给定圆的半径r,求圆的面积
输入包含一个整数r,表示圆的半径
输出一行,包含一个实数,四舍五入保留小数点后7位
r >=1 && r <= 10000
本题输入的是一个整数,输出是一个实数。
本题对精度要求高,π应取较精确的值,比如 PI = 3.14159265358979323,也可以使用数学公式求π,比如 PI = atan(1.0)*4.
C++输出流默认的有效位数包括整数和小数一共是6,本题却要输出小数点后7位数。
输出结果要精确到小数点后7位,则需要用到setprecision(n)函数,调用该函数需要用到头文件t#include
还需用到fixed,用来控制小数位数(fixed:浮点值显示为定点十进制)。
#include<cmath>
#include<iomanip>
#include<iostream>
using namespace std;
const double PI = atan(1.0)*4;//精确计算圆周率PI
double area(int r)
{
if(r >= 1 && r <= 10000)
{
return PI * r * r;
}
else
{
exit(0);
}
}
int main()
{
int r;
cin>>r;
cout<<fixed<<setprecision(7)<<area(r)<<endl;
return 0;
}
原文:https://www.cnblogs.com/l574/p/14988222.html