Hur fungerar dena kod?
def polynomial_to_string(p_list):
'''
Return a string with a nice readable version of the polynomial given in p_list.
'''
terms = []
degree = 0
# First collect a list of terms
for coeff in p_list:
if degree == 0:
terms.append(str(coeff))
elif degree == 1:
terms.append(str(coeff) + 'x')
else:
term = str(coeff) + 'x^' + str(degree)
terms.append(term)
degree += 1
terms.reverse() # Reverses the order of the elements in the list
final_string = ' + '.join(terms) # The string ' + ' is used as "glue" between the elements in the string
return final_string
har i uppgift att ändra
Termer med koefficient 1 skrivs utan koefficient. Dvs, "1x^2" ska istället bli "x^2".
Termer med koefficient 0 skrivs inte ut. Dvs, "2x^2 + 0x + 0" ska förenklas till "2x^2".
Vill egentligen bara förstå hur funktionen fungerar? Sätter jag in ett polynom och får koefficienterna och gradtalet för polynomet representerat som en lista?
Det ser ut som att p_list är en lista av alla koefficienter, med konstanten först. Det borde de ha skrivit någonstans.
T.ex. [1,0,5] representerar 1+5x2.