入門訓練-圓的面積
阿新 • • 發佈:2018-11-21
問題描述
給定圓的半徑r,求圓的面積。
輸入格式
輸入包含一個整數r,表示圓的半徑。
輸出格式
輸出一行,包含一個實數,四捨五入保留小數點後7位,表示圓的面積。
說明:在本題中,輸入是一個整數,但是輸出是一個實數。
對於實數輸出的問題,請一定看清楚實數輸出的要求,比如本題中要求保留小數點後7位,則你的程式必須嚴格的輸出7位小數,輸出過多或者過少的小數位數都是不行的,都會被認為錯誤。
實數輸出的問題如果沒有特別說明,舍入都是按四捨五入進行。
樣例輸入
4
樣例輸出
50.2654825
資料規模與約定
1 <= r <= 10000。
提示
本題對精度要求較高,請注意π的值應該取較精確的值。你可以使用常量來表示π,比如PI=3.14159265358979323,也可以使用數學公式來求π,比如PI=atan(1.0)*4。
分析:
本來想著題目不難,一寫就過了,不過看看這麼多的要求、說明、提示啥的還是悄悄在編譯器上走了一遍,不過,這一走,可不好,兩次提交都錯了,都只對了一半分,又耐心的看了看題目,把π從PI=3.14159265358979323換成了PI=atan(1.0)*4,就全對了,想來應該是精確度不夠,看來還是算出來的數靠譜。
程式碼如下:
#include<stdio.h> #include<math.h> int main() { int r; double s,pi=atan(1.0)*4; scanf("%d",&r); s=pi*r*r; printf("%.7lf\n",s); return 0; }
注:題目來源