давно
Мастер-Эксперт
259041
7459
25.03.2015, 17:52
общий
это ответ
Здравствуйте, Алексей Валентинович!
Решение найдено: X=0,639 . Я написал для Вас Vbs-сценарий, который поможет Вам решать любые уравнения методом итераций (пробных приближений). Даже если уравнение не имеет решения, мой скрипт позволит Вам наглядно убедиться в этом.
Для решения Вашей задачи просто запустите прилагаемый сценарий, и он отобразит на экране, как за несколько секунд он находит корень Вашего уравнения, введённого в него в виде
Y=2/x+x-Sqr(4+(Sqr(64+144/x^2))/2)
Проверить найденное решение удобно в Windows-Калькуляторе (я проверял в WindowsXP и Windows7). Для этого вставляем в Калькулятор-поле сначала левую часть Вашего уравнения:
2/0,639+0,639=
(копируем выделенный фрагмент вместе со знаком равенства клав-сочетанием Ctrl+C , затем в активном окне Калькулятора вставляем клав-сочетанием Ctrl+V ). Калькулятор возвращает значение 3,769 (я округлил до 4х цифр).
Затем аналогично вставляем правую часть (4+((64+144/(0,639*0,639))@)/2)@=
Пришлось заменить Ваш фрагмент "квадратный корень(выражение)" на синтакс "(выражение)@", понятный Win7-Инженерному калькулятору. Калькулятор возвратил то же значение 3,769.
Если Вы работаете в ОперСистеме WindowsXp, то её Инженерный калькулятор трактует символ @ как возведение в квадрат. Поэтому, в XP используем Обычный калькулятор с добавлением скобок, без которых Обычный калькулятор выполняет операнды без учёта приоритетов (умножения над сложением и тп).
Вставляем в Xp-калькулятор строку (4+(((64+(144/(0,639*0,639)))@)/2))@= , и получаем то же значение 3,769 .
К сожалению, мне не удалось реализовать ввод в скрипт произвольной формулы для решения другого (изменённого) уравнения. Если в диалоговом окне ввести строковое значение формулы, то затем при попытке вычислить это строковое значение VBS возвращает ошибку несоответствия типов данных.
Я не знаю, как средствами VBS вычислить алгебраическое выражение, изначально-заданное в виде текстовой строки. Поиск в интернете не помог. Поэтому, если Вы захотите изменить входные данные для скрипта, Вам придётся самому подредактировать его. Для этого из контекстного меню файла "РешениУравнений.vbs" выберите команду Изменить. Скрипт откроется в текстовом редакторе.
В 44й строке Вы увидите
Y=2/x+x-Sqr(4+(Sqr(64+144/x^2))/2) 'В правую часть равенства введи формулу для Функции,
Правее апострофа почти во всех моих строках вписаны поясняющие комментарии.
Внесите нужные изменения, сохраните обновлённый файл, и запускайте. Что не понятно - спрашивайте в мини-форуме.