Войти Создать аккаунт

Калькулятор · Шаг 9 из 9

Что происходит при нажатии действия

Последний шаг и самый главный. Нажали «2», «+», «3», «*» — и на экране должно появиться 5, ещё до того, как нажато «равно». Калькулятор не ждёт всего выражения: он считает каждый раз, когда набрано достаточно.

Что сделать

Обработайте нажатие действия или «равно» — так, чтобы калькулятор считал, не дожидаясь всего выражения.

Что приходит

  • ekran — что набрано на экране, строка

  • nakopleno — накопленное число или None

  • znak — запомненное действие или None

  • klavisha — нажатая клавиша: "+", "-", "*", "/" или "="

Что вернуть

Тройку (новый экран, новое накопленное, новый знак); правила — в «Подробных правилах»; ваши шаги 1–3 даны готовыми — зовите их.

Допишите функцию nazhat_deystvie в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

В проекте

Это «мозг» калькулятора: окно зовёт nazhat_deystvie на каждую кнопку действия и «=» и хранит то, что вы вернули. Решите шаг — и «2 + 3 *» покажет 5 ещё до «равно».

Пример

Набрали «2» и нажали «+»: накопленного ещё нет — оно становится 2, знак «+» запомнен, экран прежний: ("2", 2, "+"). Набрали «3» и нажали «*»: 2 + 3 = 5 считается сразу — ("5", 5, "*").

Тот же пример кодом
Вызов
nazhat_deystvie("2", None, None, "+")
Вернуть
('2', 2, '+')
Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.