簡體   English   中英

Python:正多邊形的面積

[英]Python: area of a regular polygon

我正在嘗試計算“規則多邊形”的面積(規則多邊形表示多邊形的所有邊都相同)。 我創建了一個方法來執行此操作,但是它似乎被“ 1”關閉了,我似乎無法弄清原因。

import math

if __name__=="__main__":

    num_sides = int(input("Enter the number of sides: "))
    side_length = float(input("Enter the side: "))

    def polygon_area(n_sides, length):
        area = (n_sides * (length ** 2)) / (4 * math.tan((math.pi) / n_sides))
        print(area)

    polygon_area(num_sides, side_length)

這是我用來查找給定1邊的正多邊形的面積的公式 在此處輸入圖片說明

這是我應該得到的預期輸出

在此處輸入圖片說明

因此,預期結果應為73 .69017017488385,但我得到72 .69017017488385。 我認為這可能是操作的順序,也可能是用戶輸入的處理方式,但似乎還可以。 我現在還不確定為什么會以1。

在梁的書中,這是一個眾所周知的錯誤。 正確的答案是72.69017017488385 注意,請勿在函數中print()值。 return給他們,讓呼叫者進行打印。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM