Python中的阿基米德PI近似

时间:2017-10-05 21:14:44

标签: python

enter image description here

到目前为止,这是我的代码,

from math import *

def main():
    sides = eval(input("Enter the number of sides:"))

    value = 360/(2 * sides)
    sinvalue = sin(value)
    PI = sinvalue * sides

    print("Approximate value of pi =", PI)

但是,我没有得到示例代码中的正确值。

1 个答案:

答案 0 :(得分:3)

math.sin期望以弧度指定角度。

>>> print(math.sin.__doc__)
sin(x)

Return the sine of x (measured in radians).

您以度为单位指定它。改为以弧度指定角度:

value = math.pi / sides

或者,如果您不想如此明确地使用math.pi,请使用辅助函数转换单位:

value = math.radians(360/(2*sides))