Python組 入門訓練 BEGIN 3 圓的面積

2021-10-11 09:13:03 字數 1773 閱讀 4528

時間限制:1.0s 記憶體限制:256.0mb

給定圓的半徑r,求圓的面積。

輸入包含乙個整數r,表示圓的半徑。

輸出一行,包含乙個實數,四捨五入保留小數點後7位,表示圓的面積。

說明:在本題中,輸入是乙個整數,但是輸出是乙個實數。

對於實數輸出的問題,請一定看清楚實數輸出的要求,比如本題中要求保留小數點後7位,則你的程式必須嚴格的輸出7位小數,輸出過多或者過少的小數字數都是不行的,都會被認為錯誤。

實數輸出的問題如果沒有特別說明,捨入都是按四捨五入進行。

50.2654825

1 <= r <= 10000。

本題對精度要求較高,請注意π的值應該取較精確的值。你可以使用常量來表示π,比如pi=3.14159265358979323,也可以使用數學公式來求π,比如pi=atan(1.0)*4。

本題看上去只要獲取半徑r的值,然後套用圓面積計算公式即可。但是真正上手敲**時還是愣了一下,我卡殼的地方是這兩處:

1、高精度的 pi 如何獲取

2、圓面積保留小數點後7位如何表示

這兩處其實也是題幹中指出的注意點。只要解決了這兩點,那麼本題其實是沒難度的。

# 匯入python內建模組math,獲取高精度的pi

import math

# 獲取半徑r的值

r =int

(input()

)# 計算圓面積

area = math.pi * r * r

# 列印圓的面積

print(''

.format

(area)

)

關於上面提到的卡殼點:

1、高精度的pi可以從python內建模組math中獲取,math.pi 就是我們要的pi

2、保留小數點後7位輸出,通過格式化字串來實現,這裡我是用字串相關的format函式進行格式化的。也可以使用c風格的 %f 這種語句,看個人習慣吧。

我個人也剛開始備考藍橋杯,今天算是正兒八經做題的第二天,因此我自己對如何備考也有一些迷茫,比如有一點,就是python組不能使用第三方庫,只能使用python內建的模組做題,這裡就牽扯到我到底要學習哪些內建模組呢?我的想法是通過做題來發現自己需要掌握的模組,比如本題用到了math模組,那麼閒暇之餘就可以通過python文件來學習一下math模組的基本用法。

1、math.pi 作為math模組的常量出現,具體精確到小數點後15位

3.141592653589793

2、數字保留小數點後x位方式——格式化字串

''

.format

(num)

# x為需要保留的小數點後位數

# 假設我們保留 pi 的小數點後10位輸出

print(''

.format

(math.pi)

)

3.1415926536

可以發現,格式化字串輸出,不是簡單地「截斷」,而是採用四捨五入的方式,非常符合做題的需要

Python入門實踐訓練(一)

1 1題目 替換1 20內的數字,3的倍數和5的倍數用不同的數字代替 方法一 str for i in range 1,21 if i 3 0 and i 5 0 elif i 5 0 and i 3 0 elif i 3 0 and i 5 0 else print str 執行結果 方法二 fo...

Python入門實戰訓練(二)

1.九宮格 1至9九個數字,橫豎都有3個格,思考怎麼使每行 每列和對角線上的三數之和都等於15 2.尋找班級裡面名字最長的人 我有一串字串人名 names kunpen ji,li xiao,caron li,dongjian shi,ji zhao,fia yuan y,wenxue ding,x...

python 藍橋杯 入門訓練

記憶體超限!def fibonacci n if 1 n or 2 n return 1 arg 1,1 i 3 while i n 1 i 1 return arg i 2 n input n int n if 1 n and n 1000000 fib fibonacci n fib是fibon...