python
advanced
Решено
До 2026-11-24
Calculator: evaluate an expression
Write evaluate(expr) that computes an arithmetic expression given as text, without eval, exec or ast.literal_eval.
- Numbers can be integers or decimals (
3,2.5). - Operators
+ - * /with normal precedence, and parentheses. - Unary minus:
-3,2 * -(1 + 1). - Spaces may appear anywhere.
- Raise
ValueErrorfor invalid input ("2 +","(1","4 $ 2") andZeroDivisionErrorfor division by zero.
Acceptance criteria
- Return a
float. - The tests at the bottom print
All tests passed.
Hint: a tokenizer plus a recursive-descent parser (expression → term → factor) keeps this short.
Уже решили: 0.
РедакторCtrl + Enter
Когда тесты выводят "All tests passed", задача отмечается как решённая в этом браузере.
Отправить решение на проверку