Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.25;
Скачать: CL | DM;

Вниз

Составление формул   Найти похожие ветки 

 
hfa   (2004-02-13 08:15) [0]

Доброе время суток господа! Нужны идея по вот такому вопросу..
Возможно ли такое? Есть окно редактора Edit .. Возможно ли написать какую либо формулу ввиде строки а т.е например
2*COS(2) а затем решить ее... в окне Edit написать например такое 2*2квадрат+(2*COS(5)) формула может быть любая и пользовател сам будет соблюдать скобки и правильность написание формулы! Может есть какие либо идею или же может готовые компоненты? Заранее Спасибо!


 
TUser   (2004-02-13 09:37) [1]

Да, готовых компонентов (звать их мат.парсеры) навалом. Чтобы самому писать, примерно так. Ищешь знаки с самым высоким приоритетом, если их можно выполнить, то выполняешь, заменяешь на результат. Например, вместо 5+5 пишешь 10. Если написано, например 2*(3+..., тогда ничего не далаем. Потом убираем те скобки, которые можно убрать, например (10) заменяем на 10. И т.д. Если нельзя убрать скобки - решаем действия меньшего приоретета. Если можно - начинаем приорететы опять с самого верха. Вот так.


 
YurikGl   (2004-02-13 09:44) [2]

Дополню, что делается это рекурентной функцией.



Страницы: 1 вся ветка

Текущий архив: 2004.02.25;
Скачать: CL | DM;

Наверх




Память: 0.44 MB
Время: 0.032 c
8-80024
Igor_
2003-09-19 13:20
2004.02.25
Тормоза OpenGL


1-79719
alextov
2004-02-12 16:25
2004.02.25
Не получается сделать форму шире экрана


1-79882
DimonNew
2004-02-10 12:25
2004.02.25
массив


3-79637
ИМХО
2004-01-31 10:03
2004.02.25
TDBGrid с dgMultiSelect


6-80060
korvin
2003-12-18 16:41
2004.02.25
Избито и тривиально, но ... сокеты





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский