Форум программистов, компьютерный форум, киберфорум
Matlab
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/22: Рейтинг темы: голосов - 22, средняя оценка - 4.95
 Аватар для buritoz
0 / 0 / 0
Регистрация: 13.12.2010
Сообщений: 47

Ввод формулы в Edit и расчет по ней

08.02.2012, 14:52. Показов 4600. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Надо сделать так чтобы в Edit1 пользователь вводил функцию и она передавалась дальше в расчеты.

есть код
пользователь ввел в эдит1 например sin(x)
Matlab M
1
2
3
4
5
function y = f(x) 
 
valor=get(handles.edit1,'string');
 
y = valor;
при вызове этой функции возникают ошибки.
Подскажите как правильно вводить формулы в эдит. Все это в guide
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.02.2012, 14:52
Ответы с готовыми решениями:

Ввод формулы и ее расчет
Доброго вечера. Задача такая: юзер вводит формулу с "x", затем вводит "x", рассчитывается эта формула. Например: юзер ввел x^2 + x - 2; x...

Ввод формулы через поле Edit
Хочу записать интеграл через поле эдит (интеграл сделал типа Real), но когда ввожу значение "Pi""cos" и тп именно через...

Ввод формулы в edit text Matlab GUI
не могу понять, как в матлабовском gui в edit text сделать так, чтобы я вводил формулу, а он ее рисовал в axes. Т.е., например: ввожу в...

3
536 / 523 / 38
Регистрация: 13.03.2011
Сообщений: 728
08.02.2012, 20:25
Например, так:
Code
1
y = @(x) eval(valor)
Добавлено через 10 минут
А что у Вас в edit1 пишется?
0
 Аватар для buritoz
0 / 0 / 0
Регистрация: 13.12.2010
Сообщений: 47
08.02.2012, 20:41  [ТС]
в Edit1 пишется функция, любая например x.^2*sin(x), ну и тому подобное..

Сейчас выложу всю подноготную

это кнопка вычислить, вызывает функцию dihot и передаёт параметры
Код:
Matlab M
1
2
function btnDihot_Callback(hObject, eventdata, handles)
y = dihot(1, 11,2,0.1);
эта функция ищщет минимум функции, и из неё вызывается функция f
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function x = dihot(a,b,q,eps)
if eps <= q break;
else
while b-a > eps
x1=(a+b-q)/2;
x2=(a+b+q)/2;
if f(x1) > f(x2)
    a=x1;
else
       b=x2;
   end;
end;
end;
end;
x=(a+b)/2.0;
end;
вот сюда надо чтобы пользователь вводил свою функцию в y
Matlab M
1
2
3
function y = f(x)
valor=get(handles.edit1,'string');
y = valor;
это я так для полноты картины. Посмотрите может где ошибки есть.
0
536 / 523 / 38
Регистрация: 13.03.2011
Сообщений: 728
08.02.2012, 20:52
Я ошибся. Надо так:
Code
1
y = eval(sprintf('@(x) %s, get(handles.edit1,'string')));
В таком случае y будет имя Вашей функции и модно вызывать её, как y(1) т.п.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.02.2012, 20:52
Помогаю со студенческими работами здесь

Пустой Edit. Парсер формулы из Edit
Посмотрите закоменченную строку, что в ней не так? З.Ы - можно ли как-то считать формулу из поля Edit (cos(x), sqrt(4), exp...) в таком...

Запрет на ввод чисел в EDIT, пока не будет заполнено другое поле edit
Здравствуйте! Дело в том, что мне нужно сделать так, чтобы одно поле edit нельзя было заполнять до тех пор, пока не заполнено другое поле...

Edit Label (линейный) Panel, Edit Label (строки), Memo (одномер-ный),ComboBox ListBox , RadioButton (RadioGroup) CheckBox ,StringGrid (ввод пароля)
1)Edit Label (линейный) Panel Проверить истинность высказывания: &quot;Цифры данного трехзначного числа образуют возрастающую...

Расчёт формулы
Здравствуйте, вообщем, целый вечер, а уже и ночь ломая голову как написать такую формулу, в голову уже нечего не лезет, а сдавать надо уже...

Расчет формулы.
Всем привет, меня интересует такой вопрос : 1. http://s44.***********/i105/1105/b6/7755cf63f7d2.jpg вот скриншот окна, мне надо что б к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Видеокарта простаивает ночами? Вот 4 проекта, которые загрузят её наукой
Programma_Boinc 10.04.2026
Видеокарта простаивает ночами? Вот 4 проекта, которые загрузят её наукой Если на Windows стоит дискретная NVIDIA или AMD — можно отдать её вычислительную мощность реальным исследованиям. . . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru