• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Текстовый калькулятор

  • Автор темы _NoNaMe_
  • Дата начала
Статус
Закрыто для дальнейших ответов.
N

_NoNaMe_

Доброго времени суток.
У меня к вам есть несколько вопросов. Необходимо написать текстовый калькулятор (то есть в строку типа TEdit вводится, к примеру, 2+4-3*(sqrt(9)+1)), который после нажатия кнопки вычислял бы данное значение распознавая каждое включение лексем, операторов и функций.
Не могли бы вы предложить мне наиболее быстро работающий и не слишком длинный код? А то что-то я вообще не могу сообразить как это делать ;-(
 
N

NikSoft

Для: _NoNaMe_
Используй стэк для преобразования данного выражения в польскую запись(префиксная форма).
 
N

_NoNaMe_

Для: NikSoft
Все было бы хорошо, если бы со знанием языка было в порядке :-(
 
D

DIR3ct0r

Самый простой способ это использование компонент DelphiWebScript (DWS). А так почитай логику работы компилятора, разложение математических выражений (терм, фактор и т.п.)
 
N

_NoNaMe_

Для: DIR3ct0r
Дело в том, что я совсем новичек в этом деле ;-( выполнить работу надо, а понять что и как я не могу (
 
D

DIR3ct0r

если можно пользовать сторонние компоненты, то проблем нет
 
N

_NoNaMe_

Для: DIR3ct0r
В том то и дело что нельзя :)
Пытался ломать голову, написал процедуры по отлову правильно введенных данных (разрешенные символы, правильно расставленные скобки).
А вот расчетную часть сделать не могу. ну хоть убейте (
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!