Міністерство освіти, культури та охорони здоров'я p>
Республіки Казахстан p>
Алматинський ВУЗ індустрії, економіки і кібернетики p>
Факультет інформатики p>
Кафедра технічної кібернетики p>
Пояснювальна записка до курсової роботи з предмету «Мови та технології програмування» p>
Тема: «Застосування мов програмування високого рівня для реалізації чисельних методів і прикладних програм» p>
Виконав студент 2-го курсу З.О. p>
Гриньов М.В. p>
Прийняв ст. преп. Каф. ТК p>
Муртазіна А.У. p>
Алмати 1998 p>
Введення p>
Впровадження ЕОМ в усі сфери людської діяльності вимагає відфахівців різного профілю оволодіння навичками використанняобчислювальної техніки. Підвищується рівень підготовки студентів вузів,які вже з перших курсів долучаються до використання ЕОМ і найпростішихчисельних методів, не кажучи вже про те, що при виконанні курсових ідипломних проектів застосування обчислювальної техніки стає нормою впереважній більшості вузів. p>
Обчислювальна техніка використовується зараз не тільки в інженернихрозрахунках та економічних науках, але й таких традиційно нематематичнеспеціальності, як медицина, лінгвістика, психологія. У зв'язку з цим можнаконстатувати, що застосування ЕОМ набуло масового характеру. Виниклачисленна категорія фахівців - користувачів ЕОМ, якимнеобхідні знання із застосування ЕОМ у своїй галузі - навики роботи з уженаявним програмним забезпеченням, а також створення свого власного
ПЗ, пристосованого для вирішення конкретного завдання. І тут на допомогукористувачеві приходять для мов програмування високого рівня
(далі ЯВУ) і чисельні методи (далі ЧМ). p>
ЧС розробляють та досліджують, як правило, висококваліфікованіфахівці-математики. Для більшості користувачів головним завданнямє розуміння основних ідей і методів, особливостей і областейзастосування. p>
Проте, користувачі хочуть працювати з ЕОМ не тільки як звисокоінтелектуальним калькулятором, а ще і як з помічником уповсякденній роботі, сховищем інформації зі швидким і впорядкованимдоступом, а так само з джерелом і обробником графічної інформації. Всіці функції сучасної ЕОМ я припускаю продемонструвати у ційкурсової роботи. p>
У першій частині роботи представлена програма по знаходженню коренівсистеми з двох нелінійних рівнянь методами Ньютона і простих ітерацій. p>
У другій частині моєї роботи представлена програма, що демонструєкористувачеві всю міць і різноманіття графічних можливостей сучасних
ПК на прикладі застосування графічних функцій мови С + + з використанням
VGA-графіки. P>
У третій частині роботи представлена програма «Електронної записноїкнижки », яка має і практичне значення для користувачів малопотужнихперсональних комп'ютерів і ПК блокнотів з малим дисковим ресурсом дляяких нерентабельна експлуатація ПО типу Lotus Organizer і подібних ПЗ зпотужним графічним інтерфейсом. p>
На мій жаль через відсутність необхідного довідкового матеріалумені не вдалося продемонструвати в третій частині SUPER VGA-графіком, але цесправа недалекого майбутнього. Перша і друга частини роботи виконані ззастосування мови С + + фірми Borland версії 3.1 для DOS та WINDOWS, а третічастина виконана на ЯВУ «Турбо Паскаль» версії 7.0 для DOS та WINDOWS фірми
Borland із застосуванням засобів TURBO VISION. P>
Теоретична частина. P>
Етапи рішення задачі на ЕОМ. P>
Найбільш ефективне застосування Вт знайшла при проведенні трудомісткихрозрахунків у наукових дослідженнях та інженерних розрахунках. При вирішенні задачіна ЕОМ основна роль все-таки належить людині. Машина лише виконуєйого завдання з розробленою програмою. роль людини і машини легкоусвідомити, якщо процес вирішення завдання розбити на такі етапи. p>
Постановка завдання. Цей етап полягає у змістовній
(фізичної) постановці завдання і визначенні кінцевих рішень. p>
Побудова математичної моделі. Модель повинна правильно (адекватно)описувати основні закони фізичного процесу. Побудова або вибірматематичної моделі з існуючих вимагає глибокого розуміння проблемиі знання відповідних розділів математики. p>
Розробка ЧС. Оскільки ЕОМ може виконувати лише найпростішіоперації, вона «не розуміє» постановки завдання, навіть в математичнійформулюванні. Для її вирішення має бути знайдений чисельний метод,що дозволяє звести задачу до деякого обчислювальному алгоритмі. У кожномуконкретному випадку необхідно вибрати відповідне рішення з ужерозроблених стандартних. p>
Розробка алгоритму. Процес рішення задачі (обчислювальний процес)записується у вигляді послідовності елементарних арифметичних ілогічних операцій, що приводить до кінцевого результату і званоїалгоритмом розв'язання задачі. p>
Програмування. Алгоритм рішення задачі записується на зрозуміломумашині мові у вигляді точно певної послідовності операцій --програми. Процес звичайно проводиться за допомогою деякого проміжногомови, а її трансляція здійснюється самою машиною і її системою. p>
Налагодження програми. Складена програма містить різного родупомилки, неточності, описки. Налагодження включає контроль програми,діагностику (пошук і визначення змісту) помилок, і їх усунення.
Програма випробовується на рішенні контрольних (тестових) завдань дляотримання впевненості в достовірності результатів. p>
Проведення розрахунків. На цьому етапі готуються вихідні дані длярозрахунків і проводиться розрахунок за налагодженою програмі. при цьому длязменшення ручної праці з обробки результатів можна широко використовуватизручні форми видачі результатів у вигляді текстової та графічної інформації,в зрозумілому для людини вигляді. p>
Аналіз результатів. Результати розрахунків ретельно аналізуються,оформляється науково-технічна документація. p>
Математичні моделі. p>
Основна вимога до математичної моделі, --адекватність даного процесу, явища, тобто вона має достатньоточно (в межах допустимої похибки) відображати характерні рисиявища. Разом з тим вона повинна володіти порівняльною простотою ідоступністю дослідження. p>
Адекватність і порівняльна простота моделі не вичерпуютьпропонованих до неї вимог. Необхідно звернути увагу направильність оцінки області застосування математичної моделі. Наприклад,модель вільно падаючого тіла, в якій знехтували опоромповітря, дуже ефективна для твердих тіл з великою і середньою щільністю іформою поверхні, близької до сферичної. Разом з тим, у ряді іншихвипадків для вирішення завдання вже не достатньо відомих з курсу фізикинайпростіших формул. Тут необхідні більш складні математичні моделі,враховують опір повітря та інші фактори. Відзначимо, що успіхвирішення завдання в значній мірі визначається вибором математичноїмоделі; тут в першу чергу потрібні глибокі знання тій області, до якоїналежить поставлене завдання. Крім того, необхідні знаннявідповідних розділів математики та можливостей ЕОМ. p>
Чисельні методи. p>
За допомогою математичного моделювання рішення науково-технічноїзавдання зводиться до вирішення математичної задачі, що є її моделлю. Длярозв'язання математичних задач використовуються основні групи методів:графічні, аналітичні, чисельні. p>
Графічні методи дозволяють у ряді випадків оцінити порядок шуканоївеличини. Основна ідея цих методів полягає в тому, що рішення знаходитьсяшляхом геометричних побудов. Наприклад, для знаходження коренів рівнянняf (x) = 0 будується графік функції y = f (x), точки перетину якої з віссюабсцис і будуть шуканими корінням. p>
При використанні аналітичних методів рішення завдання вдаєтьсявиразити за допомогою формул. Зокрема, якщо математична задача полягаєу вирішенні найпростіших алгебраїчних або трансцендентних рівнянь,диференціальних рівнянь і т.п., то використання відомих з курсуматематики прийомів відразу приводить до мети. На жаль, на практиці цедуже рідкісні випадки. p>
Основним інструментом для вирішення складних математичних задач вданий час є чисельні методи, що дозволяють звести рішеннязавдання до виконання кінцевого числа арифметичних дій над числами;при цьому результати виходять у вигляді числових значень. Багато ЧСрозроблені давно, однак при обчисленнях вручну вони могли використовуватисялише для вирішення не дуже трудомістких завдань. p>
З появою ЕОМ почався період бурхливого розвитку ЧС та їх впровадження впрактику. Тільки обчислювальної машині під силу виконати за порівнянокороткий час обсяг обчислень в мільйони, мільярди і більше операцій,необхідних для вирішення багатьох завдань. За рахунку вручну людині не вистачилоб життя для вирішення однієї такої задачі. ЧС поряд з можливістю одержаннярезультату за прийнятний час повинен мати і ще одним важливим якістю
- Не вносити в обчислювальний процес значних похибок. P>
Чисельні методи, що використовуються в даній роботі. P>
При написанні програми вирішення системи з двох нелінійних рівняньмною використовувалися два відомих і широко застосовуваних чисельних методу.
Це метод Ньютона і метод простих ітерацій. P>
Метод Ньютона. Цей метод має швидкої збіжністю і порівнянохорошою точністю обчислень. У випадку одного рівняння F (x) = 0 алгоритмметоду був легко отриманий шляхом запису рівняння дотичної до кривоїy = F (x). В основі методу ньютона для системи рівнянь лежить використаннярозкладання функцій Fi (x1, x2, ... xn) в ряд Тейлора, причому члени, що містятьдругий (і більш високих порядків) похідні, відкидаються. p>
Нехай наближені значення невідомих системи рівнянь p>
F1 (x1, x2, ... xn) = 0, p> < p> F2 (x1, x2, ... xn) = 0, p>
................ (1) p>
Fn (x1, x2, ... xn) = 0, p>
(наприклад, отримані на попередній ітерації) рівні відповідноa1, a2, ... an. Завдання полягає в знаходженні збільшень (поправок) до цихзначенням Dx1, Dx2 ,...., Dxn, завдяки яким рішення системи (1)запишеться у вигляді: xi = ai + Dx1, x2 = a2 + Dx2 ,..., xn, = an + Dxn. (2) p>
Проведемо розкладання лівих частин рівнянь (1) в ряд Тейлора,обмежуючись лише лінійними членами щодо збільшень:
F1 (x1, x2, ... xn) »F1 (a1, ... an) + p>
F2 (x1, x2, ... xn)» F2 (a1, ... an) +
..............................................< br>Fn (x1, x2, ... xn) »Fn (a1, ... an )+. p>
Оскільки відповідно до (1) ліві частини цих виразів повиннізвертатися в нуль, то прирівняє нулю і праві частини. Отримаємо наступнусистему лінійних алгебраїчних рівнянь щодо збільшень: p>
=- F1 p>
=- F2 (2)
............................< br>=- Fn
Значення F1, F2 ,..., Fn і їхні похідні обчислюються при x1 = a1,x2 = a2, ... xn = an. p>
визначником системи (2) є якобіан: p>
J = p>
Для існування єдиного рішення системи (2) він повинен бутивідмінним від нуля на кожній ітерації. p>
Таким чином, ітераційний процес вирішення системи рівнянь (1)методом Ньютона полягає у визначенні збільшень Dx1, Dx2, ... Dxn, дозначень невідомих на кожній ітерації. Рахунок припиняється, якщо всізбільшення стають малими за абсолютною величиною: max | Dxi | i
Ньютона також важливий вибір початкового наближення для забезпечення гарноїзбіжності. Збіжність погіршується зі збільшенням числа рівнянь системи. P>
В якості прикладу розглянемо використання методу Ньютона длярозв'язання системи двох рівнянь p>
F1 (x, y) = 0, (3) p>
F2 (x, y) = 0.
Нехай наближені значення невідомих дорівнюють a, b. Припустимо, що якобіансистеми (3) при x = a; y = b відрізняється від нуля, тобто: p>
J = № 0.
Тоді наступні наближення невідомих можна апісать у вигляді p>
x = a-(F1 p>
p>
Величини, що стоять в правій частині, обчислюються при x = a, y = b. p>
При програмуванні даного методу в якості вихідних данихзадаються початкові наближення невідомих a, b, похибки e. Якщоітерації зійдуться, то виводяться значення x, y; в іншому випадку відбуваєтьсявисновок x, y у міру роботи програми до переривання її користувачем. p>
Метод простої ітерації. p>
Систему рівнянь (1) представимо у вигляді x1 = f1 (x1. .. xn), x2 = f2 (x1. .. xn), (4) p>
............. xn = fn (x1. .. xn).
Алгоритм рішення цієї системи методом простої ітерації нагадує метод
Гаусса - Зейделя, що використовується для розв'язання систем лінійних рівнянь. P>
Нехай у результаті попередньої ітерації отримано значення невідомихx1 = a1, x2 = a2 ,..., xn = an. Тоді вирази для невідомих на наступнійітерації мають вигляд p>
x1 = f1 (a1, a2 ,..., an), x2 = f2 (x1, a2 ,..., an), p>
... ............... xi = fi (xi ,..., xi-1, ai ,..., an), p>
.................. xn = fn (x1 ,..., xn-1, an). p>
ітераційний процес продовжується до тих пір, поки зміни всіхневідомих у двох послідовних итерация не стануть малими, тобтоабсолютні величини їх різниць не стануть меншими заданого малого числа. p>
При використанні даного методу успіх багато в чому визначається вдалимвибором початкових наближень невідомих: вони повинні бути доситьблизькими до істинного рішення. В іншому випадку ітераційний процес можене зійтися. p>
Частина перша. p>
Програма рішення системи нелінійних рівнянь методами Ньютона і простих ітерацій. p>
Загальні відомості. Дана програма розроблена як навчальна і в силуцього не має кодового позначення передбаченого ГОСТом 19.402-78 іявляє собою виконуваний файл kursach.ехе. p>
Для функціонування програми необхідний персональний комп'ютер звстановленою операційною системою MS-DOS 3.30 і вище або повністюсумісною з нею. p>
Оригінальний текст програми написаний на мові програмування високогорівня С + + фірми Borland версії 3.1 для DOS та WINDOWS і міститься у файліkursach.срр у формі придатною до використання його як текстового документав середовищі ДОС. Оригінальний текст програми наведено у додатку 1.В p>
Функціональне призначення. Дана програма вирішує систему нелінійнихрівнянь методами Ньютона і простих ітерацій. Програма не єуніверсальною і вирішує тільки закладену в неї систему тільки з двохнелінійних рівнянь. p>
Для розширення функціональності програми необхідно внестивідповідну зміну у вихідний текст як то: зміна вихідноїсистеми, похідних, якобіана системи. p>
Опис логічної структури. Блок-схема програми приведена вдодатку 4. p>
При написанні програми використовувалися математичні методи,описані в теоретичній частині цієї роботи. p>
Функціонально програма складається з трьох функцій main, newton, iterac.
Взаємодія функцій між собою здійснюється шляхом виклику з функціїmain функцій newton і iterac з передачею параметрів, як яківикористовуються змінні х і у в які поміщені початкові наближення,запитувані у користувача зі стандартного пристрою введення, длязабезпечення вихідних даних до методів розв'язання. Після закінчення розрахункуфункції newton і iterac повертають у функцію main результати розрахунку у виглядіпари чисел, які являють собою коріння системи рівнянь, що виводятьсяна стандартний пристрій виводу для подальшого аналізу користувачем. p>
Використані технічні засоби. Для функціонування програмипридатна мінімальна конфігурація ЕОМ на основі процесорної серії Ix86фірми Інтел з 640 Кб оперативної пам'яті і накопичувачем на гнучкому магнітномудиск. p>
Для виведення інформації придатний графічний адаптер CGA і однотипнийвідеомонітор. p>
Виклик і завантаження програми здійснюється як з гнучкого диска так і знакопичувача типу «вінчестер». При будь-якому виклик до командного рядку ДОСслід ввести повне ім'я файлу, що виконується із зазначенням шляху (якщо такийне описаний у змінній PATH файлу AUTOEXEC.BAT). p>
Вхідні та вихідні дані. В якості вхідних даних для програмивикористовується пара дійсних чисел що представляють собою наближенізначення коренів системи рівнянь, розв'язуваної програмою. Числа можуть бутияк з дробової частиною так і без неї. p>
В якості вихідних даних програма видає на стандартний пристрійвиведення інформації пару чисел, що представляють собою справжнє рішення системирівнянь у речовій формі. У разі якщо кількість знаків післядесяткового дробу великий, то висновок виробляється в експоненційної формі. p>
Частина друга. p>
Демонстраційна програма графічних функцій мови З ++. p>
Загальні відомості. Дана програма розроблена як навчальна і в силуцього не має кодового позначення передбаченого ГОСТом 19.402-78 іявляє собою виконуваний файл grafika.exe і файлів підтримки: p>
Таблиця 1. p>
| Egavga.bgi | бібліотека взаємодії з |
| | Графічним адаптером |
| bold.chr | бібліотека жирного шрифту |
| euro.chr | бібліотека шрифту «euro» |
| goth.chr | бібліотека готичного шрифту |
| lcom.chr | бібліотека шрифту типу |
| | «Комплекс» |
| litt.chr | бібліотека шрифту?? ипа «small» |
| sans.chr | бібліотека шрифту типу |
| | «Сан_серіф» |
| scri.chr | бібліотека шрифту типу «Скрипт» |
| simp.chr | бібліотека шрифту типу |
| | «Симплекс» |
| trip.chr | бібліотека шрифту типу |
| | «Триплекс» |
| tscr.chr | бібліотека шрифту тапа |
| | «Тріплекс_Скріпт» | p>
Вищенаведені файли необхідно розмістити в тій же директорії, що іосновний модуль. p>
Для функціонування програми необхідна операційна система MS DOS
3.30 і вище або повністю сумісною з нею. P>
Оригінальний текст програми написаний на мові програмування високогорівня С + + фірми Borland версії 3.1 для DOS та WINDOWS і міститься у файліgrafika.срр в формі придатною до використання його як текстового документав середовищі ДОС. Оригінальний текст програми наведено у додатку 2. P>
Функціональне призначення. Програма призначена для демонстраціїосновних графічних можливостей мови С + + в режимі VGA. Програма даєуявлення про структуру графічних можливостей мови і засоби їхзастосування на практиці. Функціональним обмеженням програми єнеможливість її експлуатації на комп'ютерах, оснащених відеоадаптерами,стандарт яких відрізняється від EGA-VGA. p>
Опис логічної структури. Програма не несе в собі єдиногоалгоритму у звичному розумінні і тому блок-схема не наводиться. Методи,використані при написанні програми, не є математичними абоіншими стандартними і будуть описані нижче при описі відповіднихфункцій. p>
Структурно програма grafika.срр представляє ряд функцій, якікоротко описані в табліце.2 p>
Табліца.2
| найменування | |
| функції в | короткий опис |
| програму | |
| main | головна функція з якої викликаються усі інші |
| | Функції |
| demoline | функція демонстрації малювання ліній з |
| | Застосуванням оператора lineto різними кольорами |
| democircle | функція демонстрації малювання кіл |
| | Довільного радіусу з довільним вибором |
| | Кольору та координат центру |
| demopix | функція малювання точок у довільному місці |
| | Екрана з довільним кольором |
| demopieslice | функція малювання зафарбованих секторів з |
| | Довільним розташуванням на екрані, |
| | Довільним вибором кута, радіуса, стилю |
| | Заповнення та кольору |
| demotext | функція демонстрації виведення текстових даних у |
| | Графічному режимі усіма доступними в мові С + + |
| | Стандартними способами і шрифтами c застосуванням |
| | Бібліотек шрифтів, перелічених у табліце.1 |
| mainwindow | функція формування на екрані графічного вікна |
| | З вказаним заголовком * header |
| drawborder | функція промальовування меж графічного екрану |
| statusline | функція формування статусного рядка з висновком |
| | Повідомлення * msg |
| demoarcs | функція виводу на екран дуг (частин кіл) |
| | З довільним початковим кутом, кольором і |
| | Координатами центру |
| demobars | функція виводу на екран певного числа |
| | Однакових прямокутників з довільно |
| | Змінюються кольором |
| demo3dbars | функція демонстрації виведення на екран |
| | Прямокутних паралелепіпедів довільного |
| | Розміру, способу заповнення передній грані, і |
| | Кольору, а також розташування на екрані |
| diagram | функція демонстрації практичного застосування |
| | Функції void pieslice (...) мови С + + для |
| | Побудови кругової діаграми за заданими |
| | Параметрами |
| endpage | функція демонстрації практичного застосування |
| | Малювання ліній і секторів з циклічно |
| | Змінними параметрами |
| endpage1 | функція практичного застосування операторів мови |
| | С + + для побудови простого калейдоскопа |
| endpage2 | завершальна сторінка, що повідомляє користувача про |
| | Завершення програми | p>
Крім функцій mainwindow і statusline всі інші функції не маютьвхідних і вихідних параметрів. Функція mainwindow як параметрвикористовує символьну рядок передану їй викликає функцією, такождіє і функція statusline. Всі функції виведення зображення крімmainwindow, statusline, drawborder викликаються з головної функції зпорядку, а перераховані вище викликаються з функцій виводу зображення. p>
Кожна функція виведення зображення викликає функцію формуванняграфічного вікна з необхідним заголовком а також визначає візуальнікордону екрану за допомогою функції drawborder і поміщає в нижню частинуекрану статусну рядок за допомогою функції statusline з необхідноюнаписом. Потім починається процес виведення на екран самого зображення,що демонструє роботу тієї чи іншої графічної функції мови С + +. Післяприпинення роботи управління переходить в головну функцію, звідкивикликається наступна функція виведення зображення. p>
У процесі роботи програма використовує файли, наведені в табліце.1і в разі їх відсутності або недоступності функціонування програми будене повним (бібліотеки шрифтів) або повністю неможливим (бібліотекавзаємодії з відеоадаптером). p>
Використані технічні засоби. Для правильного функціонуванняпрограми необхідно застосовувати наступні компоненти апаратного комплексу:персональний комп'ютер класу Ix86 з 640Кб ОЗУ, оснащений однимнакопичувачем на гнучкому магнітному диску 720Кб або накопичувачем типу
«Вінчестер», а так само відеоадаптером EGA або VGA
(переважно). Комп'ютер рекомендується оснастити відеомонітором,відповідним відеоадаптеру. p>
Виклик і завантаження. Для правильного функціонування програминеобхідно розмістити основний модуль і супутні файли в однійдиректорії. Для виклику програми необхідно в командою рядку ДОС набратиповне ім'я основного модуля. Ніяких параметрів в командному рядку непотрібно. p>
Вхідні та вихідні дані. Дана програма є демонстраційноїі не використовує вхідних даних від користувача. Вихідними даними єрезультати роботи функцій з виведення зображень на екран. Параметризображення зберігаються тільки на екрані в процесі роботи програми
(даної функції). p>
Частина третя p>
Програма електронної записника p>
Загальні відомості. Дана програма розроблена як навчальна і в силу цього немає кодового позначення передбаченого ГОСТом 19.402-78 і являєсобою виконавчий файл notebook.exe і створені нею в процесі роботифайли даних користувача, структура яких наводиться в додатку 3. p>
Для функціонування програми необхідна операційна система MS DOS
3.30 і вище або повністю сумісною з нею. P>
Оригінальний текст програми написаний на мові програмування високогорівня Турбо Паскаль версії 7.0 фірми Borland для DOS та WINDOWS ззастосуванням бібліотеки Turbo Vision і міститься у файлі notebook.pas вформі придатною до використання його як текстового документа в середовищі ДОС, інаведено у додатку 3. p>
Функціональне призначення. Дана програма призначена для веденняфайлів баз даних подібних сторінок адресної записника і здатнаповністю замінити собою її паперових попередників. Інформація з файлівпрограми застосовується тільки в «електронному» варіанті і не може бутививедена на пристрій друку (дана функція в програмі відсутня). Упроцесі роботи програма створює файл даних і тому користувачеві непотрібно заздалегідь створювати його самому. p>
Опис логічної структури. Програма не несе в собіпевного алгоритму в стандартному розумінні, а є об'єктно -орієнтованої програмою (застосовані специфічні конструкції мови --об'єкти). p>
У силу сформованих традицій і особливостей мови Турбо Паскаль данапрограма являє собою ряд процедур, які виконують певну роль івзаємодіючих між собою в рамках виконавчого модуля. Кожнафункція виконує певну дію, виходячи з параметрів отриманих відінших функцій або від користувача.
Основний текст програми можна розділити на дві частини: перша - описзмінних і об'єктів; другий - реалізація процедур. Нижче в таблиці 3наводяться процедури, які застосовуються у програмі, а в таблиці 4 - об'єкти. p>
Таблиця 3
| tdlgwin.handleEvent | |
| Tnotebook.FileOpen | відкриває файл даних |
| Tnotebook.FileSave | зберігає файл даних |
| Tnotebook.ChangeDir | змінює поточний каталог |
| Tnotebook.DOSCall | тимчасовий вихід у ДЗГ |
| Tinterior.ReadFile | читає вміст файлу даних в масив |
| | LINES |
| Tinterior.Draw | виводить дані у вікно перегляду |
| Control | отримує команду з основного діалогового |
| | Вікна |
| Tinterior.HandleEvent | основна процедура обробки подій і |
| | Операцій з файлом даних |
| DEleteItem | видаляє вказаний в Location елемент |
| | Даних |
| AddItem | додає новий або редагує наявний |
| | Елемент даних |
| SearchItem | здійснює пошук необхідного елемента |
| | Даних по контексту (перші символи) |
| Tnotebook.Work | створює вікно, в яке в подальшому |
| | Будуть виводитися дані |
| Tnotebook.HandleEvent | обробник подій програми пов'язаних з |
| | Різними об'єктами |
| Tnootebook.InitMenuBar | створення верхнього Bar-меню |
| Tnotebook.InitStatusLin | формування рядка статусу |
| e | | p>
таблиця 4.
| Tworkwin | об'єкт-нащадок від Twindow - стандартного |
| | Об'єкта ТурбоВіжн створює рамкову вікно з |
| | Смугами прокручування для управління |
| | Вбудованим в нього об'єктом Tinterior |
| Tdlgwin | об'єкт-нащадок від Tdialog - стандартного |
| | Об'єкта ТурбоВіжн створює діалогове вікно |
| | Для вибору режиму роботи |
| Tinterior | об'єкт-нащадок від Tscroller - |
| | Стандартного об'єкта ТурбоВіжн |
| | Обумовлює внутрішню частину рамкової |
| | Вікна Tworkwin, створює прокручуємо |
| | Вікно із записами з файлу даних і з |
| | Допомогою діалогового вікна Tdlgwin |
| | Керує роботою з цими записами |
| Tnotebook | о'ект-нащадок від Taplication стандартного |
| | Об'єкта ТурбоВіжн забезпечує зовнішній |
| | Вид прикладної програми. | p>
Використані технічні засоби. Для правильного функціонуванняпрограми необхідно застосовувати наступні компоненти апаратного комплексу:персональний комп'ютер класу Ix86 з 640Кб ОЗУ, оснащений однимнакопичувачем на гнучкому магнітному диску 720Кб або накопичувачем типу
«Вінчестер», а так само відеоадаптером EGA або VGA
(переважно). Комп'ютер рекомендується оснастити відеомонітором,відповідним відеоадаптеру. p>
Виклик і завантаження. Для виклику програми необхідно в командою рядку
ДЗГ набрати повне ім'я основного модуля. Ніяких параметрів в командномурядку не потрібно. p>
Вхідні та вихідні дані. Вхідними і вихідними даними для програмиє файл (файли) даних користувача і виводить інформацію,що міститься в них на екран дисплея. p>
Програми p>
додаток 1 p>
# include
# include
//опис змінних, які використовуються у програміdouble pi = 3.14, a = 1.8, b =- 2.0, c = 0.1, d = 1.6, e = 0.9, eps = 0.000001;int i = 0;double x, y;
//опису функцій вирішення методами Ньютона і простих ітераційextern double newton (double xn, double yn);extern double iterac (double xn, double yn); p>
int main (void)
(
//запит початкового наближення у користувачаscanf ( "% f", & x);scanf ( "% f", & y);
//виведення результатів через виклики функцій на екран printf ( "Остаточне рішення за методом Ньютонаn"); printf ( "% gt% gn", newton (x, y)); printf ( "Остаточне рішення за методом ітераційn"); printf ( "% gt% gn", iterac (x, y));return (0);
)
//функція рішення системи рівнянь методом ньютонаdouble newton (double xn, double yn)
(Double f1, f2, xxn, yyn; double df1dx, df1dy, df2dx, df2dy, dxy; p>
do
(i + +;
//опису вихідних ураваненій f1 = sin (xn + a) + b * yn + c; f2 = cos (yn + d) + e * xn;
//похідні df1dx = cos (xn + a); df1dy = b; df2dx = e; df2dy =- sin (yn + d);
//якобіан системи dxy = df1dx * df2dy-df1dy * df2dx;
//чергове значення х xxn = xn-((f1 * df2dy-f2 * df1dy)/dxy);
//чергове значення y yyn = yn + ((f1 * df2dx-f2 * df1dx)/dxy);
//перевірка точності рішення та закінчення рахунку if (fabs (xxn-xn) p>