Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать неотразимый комплимент Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?

Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Практическое занятие 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 кА.

Вопросы для самопроверки

1. Объясните алгоритм решения уравнения y = f(x) методом половинного деления отрезка.

2. Как правильно выбрать начальное и конечное значение отрезка в методе половинного деления отрезка?

3. Какие ограничения накладываются на вид функции y = f(x), решения которой находятся методом половинного деления отрезка?

4. Если начальное значение отрезка равно а (x = a), а конечное значение отрезка равно b (x = b), то какими должны быть значения y = f(a) и y = f(b)?

5. Если функция y = f(x) может иметь несколько корней, как определить все корни на отрезке a < x < b?

6. С какой точностью можно найти корень уравнения y = f(x) методом половинного деления отрезка?

7. Как задать точность определения корня уравнения y = f(x) методом половинного деления отрезка?

8. При каких условиях решение уравнения y = f(x) методом половинного деления отрезка будет не верным?

9. Можно ли применить метод половинного деления отрезка для определения минимального тока молнии, вероятность возникновения у которого задана (например, равна 0,5)?

10. Какие изменения в стандартную процедуру нахождения корней уравнения y = f(x) методом половинного деления отрезка следует внести для того, что определить точки пересечения функции y = f(x) с прямой y = const (например, y = 0,5)?



 






Date: 2016-05-16; view: 127; Нарушение авторских прав

mydocx.ru - 2015-2019 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию