Форум: "Основная";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];
ВнизПреобразование Найти похожие ветки
← →
saff (2004-05-24 14:36) [0]Необходимо преобразовать текстовую строку, например Sin(pi), в действительное число. Проще говоря: вводим в Edit sin(pi) или sin(2) и т.д. и получаем результат.
← →
snake1977 (2004-05-24 14:39) [1]эт тебе надо делать лексический разбор строки, либо самому, либо использовать готовые компоненты
← →
BFG9k (2004-05-24 14:55) [2]Если синтаксис должен совпадать с паскалевским , то в свое время на паскале я делал так (предупреждаю , это криво , но просто):
1. Берешь исходник той программы , которая обрабатывает результат (должен быть минимальным)
2. Создаешь программу , которая в этот исходник (прямо в текстовый файл) в нужное место подставляет текст операции, "Sin(pi)" например. А затем компилит этот исходник
exec("compile.exe myProg.pas");
Затем запускаешь саму программу
exec("myProg.exe");
И если надо убиваешь основную программу.
P.S.: Как в дельфях реализовывать , и нужно ли это делать , думай сам. Аналог exec в дельфи ShellExecute -модуль ShellApi
← →
Prohodil Mimo (2004-05-24 16:46) [3]to BFG9k.
Da vi baten"ka, izvrashenec :)
{primite pozhalujsta ne v obidu, a kak kompliment}
← →
Алхимик © (2004-05-24 16:51) [4]Шаг 1.
Скопировать подстроку "p" из "Sin(p)".
Использовать Pos, Delete, Copy, Length
Шаг 2.
Преобразовать строку "р" в число. Если это невозможно, то сообщить об этом пользователю в вежливой форме.
Шаг 3.
Скормить полученное число функции Sin.
← →
BFG9k (2004-05-24 16:56) [5]2 Prohodil Mimo: Да ,я такой . Спасибо :)
2 Алхимик: Плавали , знаем . Сначала надо будет реализовать арифметические действия , потом тригонометрические , логарифмы , возведение в степень и т д ...мало ли что может понадобиться. Зачем изобретать велосипед ? Где-то это наверняка есть.
← →
WebErr © (2004-05-24 16:57) [6]Мне тоже интересно про лексический разбор, к сожалению ссылку на компоненты ещё никто не кинул... :(
← →
Алхимик © (2004-05-24 16:59) [7]Для такой задачи искать готовое - не серьёзно. Быстрее самому написать.
← →
ega23 © (2004-05-24 17:00) [8]Мне тоже интересно про лексический разбор, к сожалению ссылку на компоненты ещё никто не кинул... :(
А я таких и не видел, в своё время сам писал в рамках курсовой по Компьютерной Графике. Но там самый простой анализ был, +-*/.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.043 c