Проект «Приближенное решение уравнения» на языке Visual Basic. Графический метод
Проект «Приближенное решение уравнения» на языке Visual Basic. Численный метод половинного деления
Идея метода состоит в выборе точности решения и сведении первоначального числового отрезка [А; В], на котором существует корень уравнения, к отрезку заданной точности. Процесс заключается в последовательном делении отрезков пополам точкой С = (А + В)/2 и отбрасыванию той половины отрезка ([А; С] или [С; В]), на котором корня нет.
Выбор нужной половины отрезка основывается на проверке знаков значений функции на его краях. Выбирается та половина, на которой произведение значений функции на краях отрицательно, т. е. когда функция имеет разные знаки — пересекает ось абсцисс.
Процесс продолжается до тех пор, пока длина числового отрезка не станет меньше заданной удвоенной точности. Деление этого отрезка пополам дает значение корня с заданной точностью х ≈ (А + В)/2.
3. Поместить на форму (рис. 1.13):
• текстовые поля TextBox1 и TextBox2 для ввода числовых значений концов отрезка А и В;
• текстовое поле TextBox3 для ввода точности вычислений Р;
• надпись Label1 для вывода значений корня;
• четыре надписи для вывода обозначений;
• кнопку Button2 для запуска обработчика события.
4. Ввести программный код, позволяющий вычислить корень уравнения методом половинного деления с использованием цикла с постусловием, который будет выполняться, пока выполняется условие (В - А)/2 > Р:
Из графика функции видно, что корень находится на отрезке [0,5; 1]. Введем в текстовые поля значения концов числового отрезка, а также точность вычислений (например, 0,0001).
На надпись будет выведено значения корня:x ≈ 0,8654175 (см. рис. 1.13).
Рис. 1.13. Проект «Приближенное решение уравнения» на языке Visual Basic
Точность вычисления корня зависит не только от параметров используемого численного метода, но и от типа переменной. В нашем случае имеет смысл говорить о математической точности результата, которая не может превышать точность числового метода, т. е. х ≈ 0,8654.Следующая страница Контрольные вопросы