首页 > 解决方案 > 计算一个范围内所有n个数的四面体数,将其存储在列表中并返回

问题描述

定义一个函数,它接受两个输入 1. startvalue 2. endvalue 计算一个不包括 startvalue 和 endvalue 的四面体。以列表格式存储输出并返回主函数。将列表转换为 str 以在此处显示是我尝试过但无法获得完整输出的方法。

def calculateNTetrahedralNumber(startvalue, endvalue):
    n = startvalue
    y = endvalue+1
    result = []
    while (n < y):
        result.append(((n*(n+1)*(n+2))/6))
        n = n+1
    return(result)
        

if __name__ == '__main__':
    fptr = open(os.environ['OUTPUT_PATH'], 'w')

    startvalue = int(input().strip())

    endvalue = int(input().strip())

    result = calculateNTetrahedralNumber(startvalue, endvalue)
    print(result)

    fptr.write('\n'.join(map(str, result)))
    fptr.write('\n')

    fptr.close()

用户输入的数据起始值 = 1 结束值 7 输出 1

预期产出

1 4 10 20 35 56 84

标签: python

解决方案


只需在将值添加到列表之前进行转换

result.append(int((n*(n+1)*(n+2))/6))

推荐阅读