senjun-courses icon indicating copy to clipboard operation
senjun-courses copied to clipboard

Python project: calculator

Open Microvenator opened this issue 1 year ago • 3 comments

Цель реквеста: добавить в курс по питону практику после самых-самых основных глав, в которых пользователь знакомится с базовыми синтаксическими конструкциями питона, а также строками, списками и словарями. На этом этапе пользователь еще не знает про классы, модули и другие важные штуки. Долго думала, какая задача подойдет для практики на таком ограниченном подмножестве языка.

Решила остановиться на классике - калькуляторе алгебраических выражений. Но не уверена) Несколько вопросов:

  • Это слишком сложное задание? Если так, может, его разбить на два? Отдельно парсинг выражения и отдельно все остальное.
  • Это слишком простое задание? Имеет ли смысл его усложнять - вводить в выражение знак факториала, несколько математических функций (синус, косинус и тд), скобки разных типов (фигурные, квадратные), экспоненциальную запись числа?
  • Есть ли более простой способ выполнения практики, чем конечный автомат для парсинга выражения на список токенов, превращение списка в ПОЛИЗ, расчет выражения в ПОЛИЗ?

p.s. Сложное-простое - восприятие субъективное. Хочется, чтобы бОльшая часть пользователей могла выполнить практику за вечер-другой, не упарываясь.

Microvenator avatar Aug 13 '24 10:08 Microvenator

Мне кажется, что задание скорее сложное, чем простое. Я помню,к ак бился над вменяемым результатом операции деления и мне до сих пор не по себе :) Так что усложнять, думаю, не стоит.

skiangel avatar Aug 13 '24 11:08 skiangel

Мне кажется, что задание скорее сложное, чем простое. Я помню,к ак бился над вменяемым результатом операции деления и мне до сих пор не по себе :) Так что усложнять, думаю, не стоит.

В этом задании не предлагается делать самопальное деление. Это действительно было бы too much. Здесь про то, что нужно распарсить строку на токены (числа и операторы) и применить операторы к числам в правильном порядке. То есть для каких-то чисел применить питонячий +, -, возведение в степень через ** и тд.

Microvenator avatar Aug 13 '24 12:08 Microvenator

В этом задании не предлагается делать самопальное деление. Это действительно было бы too much. Здесь про то, что нужно распарсить строку на токены (числа и операторы) и применить операторы к числам в правильном порядке. То есть для каких-то чисел применить питонячий +, -, возведение в степень через ** и тд.

тогда в самый раз, я считаю :)

skiangel avatar Aug 13 '24 18:08 skiangel