![]() |
|
Модераторы: Akina |
![]()
|
|
| Гость_NikoLLa |
|
|||
|
Unregistered |
Народ. Есть такая проблема: необходимо вывести на экран график функции. Функция задаётся пользователем. Как это сделать???
|
|||
|
||||
| Spawn™Production® |
|
|||
|
Тестер ПО, VB.NET Developer ![]() ![]() Профиль Группа: Участник Сообщений: 398 Регистрация: 12.4.2005 Где: Зеленоград Репутация: нет Всего: 12 |
-------------------- ОС: WinXP SP2 Rus Frameworks: v1.0.3705, v1.1.4322, v2.0.50215, v2.0.50727 Сам кодю на VB (6.0 (почти забросил), 7.1, 8.0) |
|||
|
||||
| boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 12 Всего: 35 |
использовать объэкт MSChart и вычисляя точки X и Y.
-------------------- Никогда не говори никогда |
|||
|
||||
| Kergan |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 159 Регистрация: 20.8.2005 Репутация: 3 Всего: 5 |
Но с ПРОИЗВОЛЬНЫМ графиком (когда пользовотель задает ф-ию) - отдельная песня.
Я решал эту задачу ф-ией EbExecuteLine из библиотеки vba6.dll
Тут ведь в чем проблема - тебе задана ф-ия f(x)=log(cos(sin(x))) Ты, значит, должен АНАЛИЗИРОВАТЬ выражение. А это почти так же сложно, как написать компилятор. Но есть выход. Забиваешь выражение в строку, и каждый проход заменяешь x ф-ией Replace на какое-то числовое значение. А... теперь что? Теперь у нас в строке то же арифметическое выражение, но с числом.... Теперь:
и в глобальной переменной будет нужно тебе значение. Потом можешь забить все это в цикл и построить график ПРОИЗВОЛЬНОЙ функции! ЗЫ Если надо подробнее, пиши, расскажу. ЗЗЫ Ima_globalnoi_peremennoi_v_strokovom_vide - например, у тебя ГЛОБАЛЬНАЯ переменная GLB. Тогда Ima_globalnoi_peremennoi_v_strokovom_vide = "GLB". Это сообщение отредактировал(а) Kergan - 11.10.2005, 17:58 --------------------
Была у меня дурацкая подпись...Я ее убрал, а новую еще не придумал. :( |
||||
|
|||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 7 Всего: 186 |
она вроде вне среды не работает... |
|||
|
||||
| зашедший_на_свет |
|
|||
|
Unregistered |
почему же? Ebexecuteline Очень даже работает, я пробовал.
To kergan: и такой алгоритм реально функционирует? |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 7 Всего: 186 |
у меня не работала..
проверю. |
|||
|
||||
| Guest |
|
|||
|
Unregistered |
|
|||
|
||||
| NikoLLa |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.9.2005 Где: Челябинск Репутация: нет Всего: нет |
Kergan Не объяснишь, что это за ф-ия EbExecuteLine? А по подробней бы не помешало, а то мало понятно если честно.
[email protected] Я вам оставил свой мэйл([email protected]) |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 7 Всего: 186 |
она динамически исполняет строку-программу на VB - он ведь интерпретатор |
|||
|
||||
| Kergan |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 159 Регистрация: 20.8.2005 Репутация: 3 Всего: 5 |
Здрасте, люди. Про EbExecuteLine - вот хорошая статья.
Пишем интерпретатор на VB Только там не сказано, или не акцентировано внимание, на том, что EbExecuteLine может работать с глобальными переменными и вызывать глобальные функции. Очевидно, что это открывает принципиально новые возможности! --------------------
Была у меня дурацкая подпись...Я ее убрал, а новую еще не придумал. :( |
|||
|
||||
![]()
|
| Правила форума "VB6" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB6 | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |