#python
#питон
Вопрос:
По какой-то причине значение y не будет увеличиваться в цикле. Я попытался использовать его внутри цикла, но тогда мне пришлось бы работать в обратном направлении, но даже тогда код работал не так, как предполагалось.
Это должно быть 1-x x^2-x^3 x^4 …xn
def minus(r,y): result = 0 term = 0 for _ in range(0,y, 1): result = term term = term (-r**y) print(term) print(f"{r}^{y} = {(r**y)}") #was checking value of y but it remians the same throughout return result r = int(input("Enter root -gt; ")) y= int(input("Enter range -gt; ")) print(minus(r,y))
Выход:
Enter root -gt; 5 Enter range -gt; 4 -625 5^4 = 625 -1250 5^4 = 625 -1875 5^4 = 625 -2500 5^4 = 625 -1875
Комментарии:
1.
result = term
значитresult = term
, вы, наверное, хотитеresult = term
.
Ответ №1:
Вы нигде не обновляете значение y
. Изменить
def minus(r,y):
Для
def minus(r, max_y):
и
for _ in range(0,y, 1):
Для
for y in range(max_y 1)
В качестве примечания, я считаю, что вы хотите (-r)**i
вместо (-r**i)
этого .
Комментарии:
1. Это отдельный вопрос. Вы можете отметить этот ответ как принятый, если он решил вашу первоначальную проблему, а затем опубликовать свой новый код и свою новую проблему в качестве нового вопроса.