русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2014-12-01; просмотров: 557; Нарушение авторских прав


Пусть дана некоторая функция некая 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 кА.



<== предыдущая лекция | следующая лекция ==>
Цель занятия | Сведения о методе


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.077 сек.