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

Инженерный калькулятор · Шаг 6 из 10

Всё выражение целиком

Ступени разбирают, сколько смогли, и останавливаются на непонятном. В «2 3» верхняя ступень разберёт «2» и честно вернёт номер токена «3» — она не знает, что дальше ничего быть не должно. Это знает только тот, кто разбирает строку целиком.

Что сделать

Посчитайте выражение целиком: разрежьте на токены, разберите с начала и убедитесь, что не осталось лишнего.

Что приходит

  • stroka — выражение, как его набрали

  • razbit — функция «строка → список токенов», ваш шаг 1

  • vyrazhenie — функция верхней ступени: vyrazhenie(tokeny, i) возвращает (значение, номер следующего токена)

Что вернуть

Значение выражения; пустое выражение или лишний токен в конце — ValueError с текстом.

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

В проекте

Это вход в разбор: калькулятор зовёт celikom на каждое «=» и показывает ответ или ваш текст ошибки.

Пример

В проверке токены режет str.split, а выражение — игрушка chislo, которая берёт одно число. "42" — один токен, разобран целиком, ответ 42. А "4 2" — ошибка: после 4 остался лишний токен.

Ctrl+Enter — проверить

Обсуждение

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

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