Главная | Случайная
Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Практическое занятие 12




Решение уравнения методом половинного деления отрезка.

Цель занятия

Знакомство студентов с методом нахождения решений уравнений y = f(x) методом половинного деления отрезка.

Сведения о методе

Пусть дана некоторая функция некая y = f(x), показанная на рис. 12.1. Мы точно знаем, что функция пересекает ось абсцисс всего один раз на отрезке между значениями х0 и хk. В этом случае алгоритм нахождения решения уравнения по методу половинного деления отрезка строится следующим образом:

1. находится середина отрезка х0 и хk, т.е. x:=(x0 и xk )/2.

2. Находится значение функции y = f(x) в точке середины отрезка.

3. Если y > 0, тогда начальному значению отрезка присваивается значение середины отрезка (x0:=x;), если меньше нуля, конечному значению отрезка присваивается значение середины отрезка(xk:=x;).

4. Пункты 1,2 и 3 повторяют до тех пор, пока величина отрезка не станет меньше заданной точности определения решения уравнения.

Рис. 12.1. Функция y = f(x) и способ определения х для у = 0

Порядок выполнения работы

Задание 1

ЗапуститеДельфи. Создайте заголовок формы «Решение уравнения методом половинного деления отрезка». Сохраните программу в папке практика 12. Проверьте число сохранённых файлов (должно быть не менее 6).

Положите на форму компонент Panel, удалите её заголовок и измените цвет на clSkyBlue.

Положите на панель следующие компоненты: а) две кнопки запуска типа Button и измените их заголовки на «Старт» и «График»; б) 3 компонента LabeledEdit из дополнительной палитры компонентов и измените их заголовки на следующие: «начало», «конец» и «решение». Измените размеры панели так, чтобы компоненты занимали большую часть площади панели, а саму панель с компонентами переместите в верхний левый угол формы. Положите на форму под панелью отладочное поле вывода Memo, выровняйте его по ширине с панелью, измените вертикальный размер до края формы и вставьте линейки прокрутки.

Положите на форму справа от панели компонент Chart из дополнительного набора и измените его размер так, чтобы он занимал всю оставшуюся часть формы. Подготовьте компонент Chart к выводу графиков.

Задание 2

Двойным щелчком на кнопке «График» создайте заготовку процедуры построения графика. В разделе описания переменных опишите переменные с плавающей запятой х и у и целочисленную переменную n. Постройте график функции, заданной преподавателем (y:=500-2*x-3*sqr(x)+0.03*x*sqr(x);). Определите границы отрезков, где функция имеет только одно решение, и запишите эти значения в поля Text компонент LabeledEdit с заголовками «начало» и «конец».

Задание 3

Двойным щелчком на кнопке «Старт» создайте заготовку процедуры нахождения решения уравнения, заданного в задании 2. В разделе описания переменных опишите переменные с плавающей запятой x, x0, xk, dx и y и целочисленную переменную n. В теле процедуры присвойте переменным x0, xk значения начала и конца отрезка, на котором будет искаться решение из соответствующих полей Text компонент LabeledEdit. Присвойте значение 1 переменной n. Задайте требуемую точность определения корня заданного уравнения y = f(x), присвоив её значение переменной dx.

Создайте заготовку условного цикла

Repeat

Until xk-x0 <dx;

В тело цикла вставьте пункты 1, 2 и 3 из раздела сведений о методе. Увеличьте в теле цикла значение n на 1 (n:= n +1;). Дополните цикл выводом переменных n и х в поле memo.

После выхода из цикла найдите середину получившегося отрезка и выведите её значение в фиксированном формате в поле memo и полей Text компонента LabeledEdit с заголовком «решение».

Задание 4

Определите минимальный ток молнии, у которого вероятность возникновения равна 0,5. Для определения вероятности тока молнии использовать уравнение (11.2). Решение искать в диапазоне токов от 0 до 250 кА.




Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2019 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных