Найти - Пользователи
Полная версия: направленный инфиксный вычислитель
Начало » Python для новичков » направленный инфиксный вычислитель
1
dobriy_dada
Здраствуйте, подскажите пожалуйста как понять это задание из книги “Problem Solving with Algorithms and Data Structures”:

Задание:
Создайте направленный инфиксный вычислитель, который совмещает функциональность преобразования из инфикса в постфикс и алгоритм постфиксных вычислений.
Оберните результат предыдущего задания в калькулятор.

Что тут надо сделать? Объясните пожалуйста, я вообще вопроса не понял, не понимаю, чего хотят в задаче?
py.user.next
Инфиксная запись выражения - это обычная человеческая 2 + 3. Постфиксная запись выражения - это калькуляторная 2 3 +. Префиксная запись выражения - это калькуляторная + 2 3.

dobriy_dada
Что тут надо сделать?
Создать класс, который умеет переводить инфиксную запись в постфиксную и который умеет вычислять постфиксную запись.
Класс с двумя методами: 1) метод перевода из инфиксной записи в постфиксную; 2) метод вычисления постфиксной записи.
dobriy_dada
py.user.next - спасибо :-) а что означает “обернуть результат в калькулятор” ?
py.user.next
dobriy_dada
а что означает “обернуть результат в калькулятор” ?
Если имеется в виду это задание и что его нужно обернуть, то у тебя должен быть класс калькулятор, в котором используется объект класса вычислитель. Это связано с тем, что у калькулятора может быть какая-то память и другие действия, типа взаимодействия с таблом, переключения режимов. Так вот эти элементы калькулятора никак не относятся к вычислителю выражения. У того нет памяти, или есть, но своя собственная для личных нужд. И калькулятор сводится к такому устройству, которое управляет независимыми друг от друга блоками вроде табло, память, вычислитель выражений, переключатель режимов. Табло не знает про память, память не знает про вычислитель, вычислитель не знает про режимы.
Сам калькулятор является связующим звеном и знает, откуда, куда и что перенаправлять.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB