为什么赢得python更新功能值?

时间:2015-11-17 19:09:25

标签: python function polygon

我正在尝试在python中创建一个表,询问用户多边形的边长,然后在它的边数在3-9之间时给出该多边形的面积。我的问题是,在报告功能中,我必须为每个具有不同边数的多边形给出不同的区域,但是当我运行它时,即使多边形的边数已经改变,该区域也总是相同的。

import math

def main():
    side_length = get_side_length()
    report(side_length)

def get_side_length():
    length = int(input('Enter a side length: '))
    return length

def report(a):
    num_sides = 2
    each_area = polygon_area(a)
    print('side length\t'+ 'number of sides\t'+ 'area')
    while num_sides < 9:
        num_sides += 1
        print(a, num_sides, each_area, sep='\t\t', end='\n')

def polygon_area(sl):
    for num_sides in range(3, 10):
        area = (num_sides * sl * sl) / (4 * math.tan(math.pi / num_sides))
        return area

main()

0 个答案:

没有答案