2017-09-06 104 views
-5

我一直试图弄清楚如何使用递归来列出两个数字乘法表根据降序值。使用Python递归地从n到n-n + 1递归地查找n数到n-n + 1的乘积以降序排列的值使用Python

例如,对于数字12和12,我希望我的函数将数字返回到看起来像这样的列表中。

list = [144, 132, 121, 110, 100 99... 1] 

12 x 12 Multiplication Table

+1

你有什么企图,尤其是你在努力做? – miradulo

+0

看起来他正在通过乘法表取回对角线之字形 - 12 * 12,12 * 11,11 * 11,11 * 10,10 * 10,10 * 9等。不知道为什么这是有用的或为什么它与递归 - 闻起来像某人的功课。 –

+0

Hugh Bothwell对数字顺序的解释是否正确?如果是这样,这不会给出整个12x12乘法表,但只给出23个值。那是你要的吗?所有递归函数都有一个“基本情况” - 你决定这是什么吗?你有没有决定如何走向那个基础案例?如果没有,你不能说真的一直在试图找出递归。 –

回答

0

我不能完全肯定,如果这是你在找什么。它不会列出下来,在评论中提到的所有产品,但它确实按照之字形顺序(如果这是你在找什么)

def product(a,b,result=[]): 
    result.append(a*b) 
    # print(a,b) 
    if a==b==1: # terminating case 
     return result 
    return product(max(a,b)-1,min(a,b),result) 

print(product(12,12))