Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Ваш интернет-бизнес" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
← Декабрь 2005 → | ||||||
2
|
4
|
|||||
---|---|---|---|---|---|---|
5
|
6
|
7
|
8
|
9
|
10
|
|
12
|
13
|
14
|
15
|
16
|
18
|
|
19
|
20
|
21
|
22
|
23
|
25
|
|
26
|
27
|
28
|
29
|
30
|
31
|
Статистика
-1 за неделю
ExCode.ru - программирование на высоком уровне - выпуск 22
ExCode.ru - программирование на высоком уровне | ||||||||||||||||||||
Выпуск №22 ( 2005.12.24 )
|
||||||||||||||||||||
Здравствуйте, уважаемые подписчики!Поздравляем Вас с наступающим Новым 2006 Годом, желаем Вам новых идей и новых решений, пусть новый год Вам принесет одни удачи! |
||||||||||||||||||||
Новости копьютерного мира:
|
||||||||||||||||||||
Статья номера:
Посчитать строку с формулойВ Delphi нет функции, которая бы позволяла посчитать строку с формулой. Но есть множество способов реализовать это самому. Здесь я привел самый простой из них. Он не очень быстрый, но при нынешних скоростях компьютеров для многих целей он подойдет.
Принцип его заключается в следующем. Сначала строка оптимизируется – выкидываются все пробелы, точки и запятые меняются на установленный разделяющий знак (DecimalSeparator). Все числа и параметры (например, x), содержащиеся в строке "обособляются" символом #. В дальнейшем это позволяет избежать путаницы с экспонентой, минусами и. т. д. Следующий шаг – замена, если нужно, всех параметров на их значения. И, наконец, последний шаг, подсчет получившейся строки. Для этого программа ищет все операции с самым высоким приоритетом (это скобки). Считает их значение, вызывая саму себя (рекурсивная функция), и заменяет скобки и их содержимое на их значение, обособленное #. Дальше она выполняет то же самое для операции с более низким приоритетом и так до сложения с вычитанием. Каждый шаг выделен в отдельную процедуру. Это позволяет быстрее считать функцию, если она не меняется, а меняются только значения параметров. Вот модуль с этими методами. Листинг 1. Посчитать строку с формулой
А это пример использования этого модуля. Он рисует график функции, введенной в Edit1. Константы left и right определяют края графика, а YScale – масштаб по Y. Листинг 2. Пример использования
Новые статьи на сайте ExCode.ru: |
||||||||||||||||||||
Новые файлы на сайте ExCode.ru:
|
||||||||||||||||||||
Subscribe.Ru
Поддержка подписчиков Другие рассылки этой тематики Другие рассылки этого автора |
Подписан адрес:
Код этой рассылки: comp.soft.prog.excode Архив рассылки |
Отписаться
Вебом
Почтой
Вспомнить пароль |
В избранное | ||