evgeniy8705
@evgeniy8705
Повелитель вселенной

Как написать мат.интерпритатор на С?

Конечно нужно сделать чтобы можно было вводить примерно такие выражения (2+(3^3)/9*3+23+112/23)^3
Но для начала хотя бы написать чтобы решал такое 2 + 2.(сначала просят ввести первое число, потом знак, потом второе число). Результат: 2 + 2 = 4

Подскажите что да как. Подкиньте идей или примерный алгоритм.
  • Вопрос задан
  • 2379 просмотров
Решения вопроса 1
Tiendil
@Tiendil
Разработчик ПО.
Если подходить основательно, то Вам надо начать с этой книги: www.ozon.ru/context/detail/id/3829076

Если менее основательно, то вот ключевые слова для поиска:

обратная польская нотация
flex
bison
токенайзер
парсер
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
gbg
@gbg
Любые ответы на любые вопросы
Алгоритм сортировочной станции это называется
Ответ написан
Комментировать
Vinatorul
@Vinatorul
Developer
Почитайте про транслирующие грамматики для арифметических выражений.
Например, здесь: Языки программирования и методы трансляции. Глава ...
Ответ написан
Комментировать
donkaban
@donkaban
Умею рисовать тени
Калькулятор с операторами - это задача, рассматривающаяся (буквально) в любой книжке о C++. Начиная со Страуструпа.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы