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

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

Токены

Человек набирает выражение как придётся: «2+3.5x», «sin( pi / 2 )», «2*10». Считать прямо по буквам строки неудобно — сначала строку режут на токены: числа, имена и знаки. Дальше калькулятор работает только с ними.

Что сделать

Разрежьте выражение на токены: числа, имена и знаки действий.

Что приходит

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

Что вернуть

Список токенов: числа — int или float, имена и знаки — строками; непонятный знак — ValueError с текстом.

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

В проекте

Калькулятор зовёт tokeny первым делом на каждое «=». Всё остальное — скобки, приоритет, функции — работает уже с вашим списком.

Пример

"2 + 3.5*x" — это [2, "+", 3.5, "*", "x"]: пробелы пропали, «3.5» стало дробным числом, «x» — именем.

Тот же пример кодом
Вызов
tokeny("2 + 3.5*x")
Вернуть
[2, '+', 3.5, '*', 'x']
Ctrl+Enter — проверить

Обсуждение

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

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