Eh bien, il est censé émuler un polynôme du nième degré. Donc, si n = 2, ce serait:
[1^k, 1^(k-1), ... 1^(k-k)]... [(k+1)^k, (k+1)^(k-1)... (k+1)^(k-k)]
Quand n = 3, ce serait:
[1^3, 1^2, 1^1, 1^0], [2^3, 2^2, 2^1, 2^0], [3^3, 3^2, 3^1, 3^0], [4^3, 4^2, 4^1, 4^0]
Donc pour n = k:
[1^2, 1^1, 1^0], [2^2, 2^1, 2^0], [3^2, 3^1, 3^0]
Merci!
5 Réponses :
def arr_gen(k):
return [[i**j for j in range(k, -1, -1)] for i in range(k+1)]
Ce serait une meilleure réponse si vous expliquiez comment le code que vous avez fourni répond à la question.
Le code ci-dessous vous aiderait.
def get_polynomial_arrays(n):
array = []
for base in range(1, n + 1):
inner_array = []
# Loop in reverse until 0
for degree in range(n + 1, 0, -1):
inner_array.append(base ** (degree - 1))
array.append(inner_array)
return array
n = 4 omets
[[1, 1, 1, 1 , 1], [16, 8, 4, 2, 1], [81, 27, 9, 3, 1], [256, 64, 16, 4, 1]]
Peut être transformé en fonction
array = []
n = 3
for base in range(1, n+1):
inner_array = []
# Loop in reverse until 0
for degree in range(n+1, 0, -1):
inner_array.append(base ** (degree - 1))
array.append(inner_array)
print(array)
Voici comment vous pouvez le faire avec une compréhension de liste imbriquée:
a = []
for s in range(n+1):
b = []
for i in range(n+1):
b.append((s+1)**(n-i))
a.append(b)
print(a)
Sortie:
[[1, 1, 1, 1], [8, 4, 2, 1], [27, 9, 3, 1], [64, 16, 4, 1]]
Cette compréhension de liste est comme:
n = 3 a = [[(s+1)**(n-i) for i in range(n+1)] for s in range(n+1)] print(a)
Vous pouvez également utiliser les compréhensions de listes de manière imbriquée, ce qui est plus pythonique, comme ci-dessous:
n = int(input()) poli_list = [[i**j for j in range(n,-1,-1)] for i in range(1,n+2)] print(poli_list)
def printPolynomial(n):
for x in range(1, n+2):
print('[', end = '')
for y in range(n,-1,-1):
print(x,'^',y,end='')
if y != 0:
print(', ', end='')
print(']')
printPolynomial(3)
Ce serait une meilleure réponse si vous expliquiez comment le code que vous avez fourni répond à la question.
Bienvenue à SO! Veuillez donner plus de détails.
Je l'ai édité, faites-moi savoir si vous avez besoin de plus d'informations Merci!
votre
^signifie-t-il une différence ou une puissance?Qu'est-ce que tu as essayé jusque-là? MCVE
Cela signifie à la puissance de
ma réponse le fait en une seule ligne