Я выполняю старое задание, которое мне так и не удалось понять. Я понимаю и получаю правильный вывод до «3, 11». После этого следует a = f2 (b, c). Что я не понимаю, так это то, что f2 обычно определяется как f2 (c, a). Я попытался изменить все c на b и все a на c в f2, но когда я перехожу к шагу b = f1 (c) (который теперь b = f1 (b), а затем заменить все a в f1 с b я не получаю правильный вывод с помощью show (a, b) в функции f1. Выходные данные должны быть a = 10 и b = 6, но, поскольку я заменил все a, нет а слева. Я понятия не имею, что мне следует делать на шаге a = f2 (b, c). Кто-нибудь может объяснить, какие дальнейшие шаги нужно выполнить, чтобы получить последние 3 правильных результата?
Назначение: (извините за плохой интервал, я не могу вставить его правильно, он вставляется как одна длинная строка)
a = 3
b = 4
def show (x, y):
print ‘%d, %d’ % (x, y)
def f1 (a):
global b
a *= 2
b += 1
c = a + b
show(a, b)
return c
def f2 (c, a):
a += 3
b = f1(c)
show(c, b)
c = a + b
return c
show(a, b)
c = f1(a)
show(a, c)
a = f2(b, c)
show(a, b)
What will be printed when this program is executed?
Желаемый результат: 3, 4
6, 5
3, 11
10, 6
5, 16
30, 6