Python project: calculator
Цель реквеста: добавить в курс по питону практику после самых-самых основных глав, в которых пользователь знакомится с базовыми синтаксическими конструкциями питона, а также строками, списками и словарями. На этом этапе пользователь еще не знает про классы, модули и другие важные штуки. Долго думала, какая задача подойдет для практики на таком ограниченном подмножестве языка.
Решила остановиться на классике - калькуляторе алгебраических выражений. Но не уверена) Несколько вопросов:
- Это слишком сложное задание? Если так, может, его разбить на два? Отдельно парсинг выражения и отдельно все остальное.
- Это слишком простое задание? Имеет ли смысл его усложнять - вводить в выражение знак факториала, несколько математических функций (синус, косинус и тд), скобки разных типов (фигурные, квадратные), экспоненциальную запись числа?
- Есть ли более простой способ выполнения практики, чем конечный автомат для парсинга выражения на список токенов, превращение списка в ПОЛИЗ, расчет выражения в ПОЛИЗ?
p.s. Сложное-простое - восприятие субъективное. Хочется, чтобы бОльшая часть пользователей могла выполнить практику за вечер-другой, не упарываясь.
Мне кажется, что задание скорее сложное, чем простое. Я помню,к ак бился над вменяемым результатом операции деления и мне до сих пор не по себе :) Так что усложнять, думаю, не стоит.
Мне кажется, что задание скорее сложное, чем простое. Я помню,к ак бился над вменяемым результатом операции деления и мне до сих пор не по себе :) Так что усложнять, думаю, не стоит.
В этом задании не предлагается делать самопальное деление. Это действительно было бы too much. Здесь про то, что нужно распарсить строку на токены (числа и операторы) и применить операторы к числам в правильном порядке. То есть для каких-то чисел применить питонячий +, -, возведение в степень через ** и тд.
В этом задании не предлагается делать самопальное деление. Это действительно было бы too much. Здесь про то, что нужно распарсить строку на токены (числа и операторы) и применить операторы к числам в правильном порядке. То есть для каких-то чисел применить питонячий +, -, возведение в степень через
**и тд.
тогда в самый раз, я считаю :)