на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Інтегрування Нютона-Котеса
p align="left">В таблиці 3 подано значення та для формули Гауса для різних від 1 до 8.

Стандартні програми‚ які використовують формули Гауса з різним числом вузлів як формули‚ що забезпечують найкращу точність‚ входять до складу багатьох пакетів програм для наукових та інженерних розрахунків.

2. Практична частина

2.1 Архітектура програми

Для реалізації поставленої задачі розроблено програму INTEGRALY.PAS (лістінг програми представлено в додатку 4).

Програма складається з головного блоку, шести процедур:

VVID_INTERVAL;

INIT_GAUS;

INIT_CHEB;

CALCULATION;

VYVID_REZ;

INFORM.

Запуск програми здійснити двома способами:

з головного меню інтегрованого середовища Turbo Pascal шляхом вибору опції Run (попередньо програма повинна бути завантажена в ОП - F10, File, Open, INTEGRALY.PAS);

з середовища операційної оболонки Norton Commander шляхом запуску INTEGRALY.EXE (попередньо програма повинна буди відкомпільована з опцією Destination To Memory).

Програма виводить на дисплей головного меню, котре пропонує користувачеві вибір однієї з опцій:

- ВВІД

- ОБЧИСЛЕННЯ

РЕЗУЛЬТАТИ

ІНФОРМАЦІЯ

- ВИХІД.

При виборі певної опції активізується відповідна процедура. Завершення роботи програми і повернення в середовище системи програмування Turbo Pascal здійснюється при натисканні клавіші Esc, що відповідає вибору опції "ВИХІД". Програма знаходить розв'язки систем лінійних рівнянь з двома та трьома невідомими, виводить обчислені визначники та знайдені розв'язки на дисплей, або інформує користувача про відсутність розв'язків.

Опишемо процедури програми INTEGRALYS.PAS.

Процедура VVID_INTERVAL. Призначення - ввід лівої та правої меж інтегрування (інтервалу інтегрування). Процедура викликається з головного меню програми при виборі пункту "ВВІД" шляхом натискання функціональної клавіші F2.

Після вводу меж інтегрування процедура припиняє роботу і повертає керування в програму. Процес виконання процедури представлено екранною копією (див. додаток 1).

Процедура INIT_GAUS. Призначення - визначення (ініціація) значень елементів квадратурної формули Гауса. Виклик процедури здійснюється процедурою CALCULATION.

Процедура INIT_CHEB. Призначення - визначення (ініціація) значень елементів квадратурної формули Чебишева. Виклик процедури здійснюється процедурою CALCULATION.

Процедура CALCULATION. Призначення - обчислення визначеного інтеграла з допомогою квадратурних формул‚ розглянутих в попередньому розділі. Процедура викликається з головного меню програми при виборі пункту "ОБЧИСЛЕННЯ" (функціональна клавіша F3). Обчислені різними методами значення визначеного інтеграла зберігаються в масиві змінних. Після обчислення інтегралів процедура передає керування головному блокові програми.

Блок схема процедури представлена в додатку 3.

Процедура VYVID_REZ. Призначення - форматований вивід результатів обчислення визначеного інтеграла на дисплей. Процедура викликається з головного меню програми при виборі пункту "РЕЗУЛЬТАТИ" (функціональна клавіша F4). Результат роботи процедури представлено не екранній копії (див. додаток 5). Для отримання друкованого результату потрібно натиснути клавішу PrtScr (при роботі в режимі MS DOS) або комбінацію клавіш Shift+PrtScr (при роботі з ОС Windows 3.xx, Windows 9x).

Процедура INFORM. Призначення - ввід короткої інформації про методи чисельного інтегрування та квадратурні формули. Процедура викликається з головного меню програми при виборі пункту "ІНФОРМАЦІЯ" шляхом натискання функціональної клавіші F1.

Після вводу текстової інформації на екран дисплею процедура організовує паузу в роботі і повертає керування в програму при натисканні довільної клавіші. Результат виконання процедури представлено екранною копією (див. додаток 1).

Головний блок програми реалізовано у вигляді вертикального меню з використанням функціональних клавіш. Вибір опції меню здійснюється за допомогою натискання відповідної функціональної клавіші‚ вихід з меню (а тим самим і з програми) здійснюється при натисканні клавіші Esc. Блок-схема головного блоку програми подано в додатку 2.

2.2 Опис програми

Програма складена‚ відкомпільована і відлагоджена в середовищі Turbo Pascal 6.0.

На початку програми, відповідно до вимог технології програмування, знаходиться вступний коментар до програми, а решта операторів програми мають таке призначення:

Оператор

Призначення оператора

001

Заголовок програми

002

Підключення зовнішнього модуля управління виводом на дисплей (Crt)

003-008

Опис глобальних змінних програми

009-011

Опис підінтегральної функції

012

Заголовок процедури Init_Gauss

013

Початок процедури

014

Визначення кількості вузлів інтегрування

015-022

Ініціалізація абсцис інтегрування та коефіцієнтів формули Гауса

023

Кінець процедури Init_Gauss

024

Заголовок процедури Init_Cheb

025

Початок процедури

026

Визначення кількості вузлів інтегрування

027-032

Ініціалізація абсцис інтегрування та коефіцієнтів формули Чебишева

033

Кінець процедури Init_Cheb

034

Початок процедури Vvid_Interval

035

Опис локальної змінної

036

Початок процедури

037

Очистка вікна виводу

038-040

Вивід екранної форми для вводу даних

041-042

Ввід меж інтегрування

043

Кінець процедури Vvid_Interval

044

Заголовок процедури Calculation

045

Початок процедури

046-047

Присвоєння значення 0 масиву integral [1..5]

048-051

Обчислення наближеного значення інтегралу за формулою прямокутників і присвоєння цього значення змінній integral[1]

052-055

Обчислення наближеного значення інтегралу за формулою трапецій і присвоєння цього значення змінній integral[2]

056-064

Обчислення наближеного значення інтегралу за формулою Сімпсона і присвоєння цього значення змінній integral[3]

065

Виклик процедури Init_Gauss

066-069

Обчислення наближеного значення інтегралу за формулою Гауса і присвоєння цього значення змінній integral[4]

070

Виклик процедури Init_Cheb

071-076

Обчислення наближеного значення інтегралу за формулою Чебишева і присвоєння цього значення змінній integral[5]

077

Заголовок процедури Vyvid_Rez

078

Початок процедури

079-089

Вивід на дисплей екранної форми для виводу результатів обчислень

090-093

Вивід масиву вихідних наближених значень інтегралу‚ обчислених різними методами

094

Організація паузи в роботі програми

095

Кінець процедури Vyvid_Rez

096

Початок процедури Inform

097-098

Опис локальних змінних процедури

098

Початок процедури

099-104

Очистка вікна виводу

105-128

Вивід короткої інформації про чисельне інтегрування та про методи‚ що використовуються для наближеного обчислення визначених інтегралів

129

Організація паузи в роботі програми

130

Кінець процедури Inform

131

Початок головного блоку програми

132

Організація циклу виводу меню програми

133

Початок тіла циклу

134

Очистка екрану

135-136

Визначення основного та фонового кольорів

137

Оголошення вікна виводу

138-162

Вивід головної екранної форми програми та меню

163

Очікування натискання довільної клавіші і присвоєння коду цієї клавіші змінній choise

164-165

Зміна основного та фонового кольорів

166-174

Заголовок оператора вибору(аналіз коду клавіші)

167

Виклик процедури Vvid_Interval‚ якщо користувачем натиснуто клавішу F2 (код клавіші 6016)

168-170

Виклик процедури Calculation‚ якщо користувачем натиснуто клавішу F3 (код клавіші 6116)

171

Виклик процедури Vyvid_Rez‚ якщо користувачем натиснуто клавішу F4 (код клавіші 6216)

172

Виклик процедури Inform‚ якщо користувачем натиснуто клавішу F1 (код клавіші 5916)

173

Кінець роботи програми при натисканні користувачем клавіші Esc (код клавіші 2716)

174

Кінець дії оператора вибору

175

Кінець тіла циклу

176

Кінець програми.

2.3 Контрольний приклад та аналіз результатів машинного експерименту

Випробування будь-якої системи є найбільш відповідальним і пов'язаний з найбільшими труднощами і найбільшими втратами часу. Відладка і тестування - найважливіші етапи життєвого циклу програм. Не можна робити висновок про правильність програми лише на тій підставі, що програма повністю протрансльована (відкомпільована) і видала числові результати. Все, чого досягнуто в даному випадку - це отримання деякої вихідної інформації, необов'язково правильної. В програмі все ще можуть міститись логічні помилки. Тому необхідно здійснювати "ручну" перевірку результатів‚ отриманих внаслідок машинного експерименту.

Існує кілька способів перевірки правильності машинних результатів:

обчислення результатів вручну;

отримання результатів з довідкової літератури, документації або сукупності таблиць;

отримання результату з допомогою іншої програми.

Контрольний приклад для перевірки правильності розробленої програми виконано вручну. Для перевірки роботи програми в нормальних умовах розглянемо визначений інтеграл‚ обчислення якого не викликає жодних труднощів‚ а саме

.

Обчислення цього інтегралу здійснимо‚ використовуючи формулу Ньютона-Лейбніца:

.

Отриманий результат співпадає з вихідними даними програми, представленими в додатку 6.

Розроблена програма дає можливість порівняти описані в розділі 1.1 методи чисельного інтегрування. Наведена в додатку 6 екранна форма результатів роботи програми свідчить про те‚ що з перелічених методів чисельного інтегрування найгірший результат дає застосування формули прямокутників‚ а найкращий результат - застосування формул Гауса.

Висновки

Розв'язування задач обчислювального характеру з використанням персональних комп'ютерів має велике практичне значення, оскільки дає можливість значно економити час при виконанні простих але громіздких обчислень. Використання з цією метою готових пакетів прикладних програм (типу MathCad) для виконання математичних обчислень має певні вади. Ліцензовані пакети програм мають високу вартість і достатньо висока складність експлуатації. Тому їх використання для розв'язування нескладних задач (а саме такою є задача чисельного інтегрування) є недоцільним. Надзвичайно важливо вміти самостійно складати прості програми для розв'язування задач обчислювального характеру.

В даному курсовому проекті розроблено і описано програму чисельного інтегрування за формулами Ньютона-Котеса. Для розробки програми вибрано мову Паскаль (середовище Turbo Pascal 6.0). Програма розроблена із застосуванням методики процедурного програмування.

Програма відкомпільована з отриманням незалежного ехе-файла та відладжена з використанням набору тестових даних‚ які розроблено вручну. Результат машинного експерименту та контрольного прикладу повністю співпали, тому можна зробити висновок про можливість використання розробленої програми на практиці.

Вибір алгоритмічної мови Паскаль для реалізації поставленої задачі повністю виправдав себе.

Список використаної літератури.

В.Я.Сердюченко. Розробка алгоритмів та програмування мовою Turbo Pascal. - Харків: "Паритет", 1995. - 349 с.

М.Я.Ляшенко‚ М.С.Головань. Чисельні методи. К: "Либідь"‚ 1996. - 285 с.

В.Т.Маликов, Р.Н.Кветный. Вычислительные методы и применение эВМ. К: Головное издательство издательского объединения "Выща школа", 1989. - 214 с.

Д.Ван Тассел. Стиль, разработка, эффективность, отладка и испытание программ. Москва: "Мир", 1985. - 332 с.

Страницы: 1, 2



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.