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

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

Имена и функции

Инженерный калькулятор знает имена: pi и e — числа, sin, sqrt, ln — функции, а ещё переменные, которые завёл человек, и ans — прошлый ответ. Всё это лежит в одном словаре. Шаг стоит над скобками: если токен — имя, разбирает его сам, а всё остальное отдаёт ступени ниже.

Что сделать

Разберите имя: число из словаря — значение, функция — её вызов на выражении в скобках; не имя — отдайте ступени ниже.

Что приходит

  • tokeny — список токенов

  • i — с какого токена начать

  • vyrazhenie — функция верхней ступени, для того, что внутри скобок функции

  • slovar — словарь «имя → число или функция одного числа»

  • dalshe — ступень ниже: dalshe(tokeny, i, vyrazhenie), ваш шаг 4

Что вернуть

Пару (значение, номер следующего токена); незнакомое имя, функция без скобок или без «)» — ValueError с текстом.

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

В проекте

Калькулятор ставит imya над скобками и даёт словарь из своих функций и вашей памяти. Решите шаг — и заработают «sin(pi/2)», «sqrt(2)» и «2 * ans».

Пример

В словаре проверки pi — 3.14, а kvadrat — функция x * x; выражение — игрушка chislo. ["kvadrat", "(", 5, ")"] — это вызов kvadrat(5), ответ (25, 4). Ступень ниже здесь не нужна — вместо неё None.

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

Обсуждение

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

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