Смекни!
smekni.com

Розробка програмного забезпечення для розв'язку СЛАР методом Гауса (стр. 1 из 3)

Зміст

Вступ

1. Теоретична частина

1.1Постановка задачі

1.2 Розв’язання системи лінійних рівняньметодом Гаусса

1.3 Вхідна інформація

1.4 Вихідна інформація

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

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

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

2.3 Контрольний приклад

Висновок

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

Додатки

Вступ

Слово «комп’ютер» означає «обчислювач», тобто пристрій для обчислень. Необхідність в автоматизації обробки даних, в тому числі обчислень, виникла дуже давно. Багато тисяч років назад для обчислень використовувались палочки, камінці і т. д. Більше 1500 років тому назад (а може і раніше) для полегшення обчислень почали використовувати рахівниці.

В 1642 р. Блез Паскаль винайшов пристрій, який виконував додавання чисел, а в 1673 р. Готфрід Вільгельм Лейбніц сконструював арифмометр, який дозволив механічно виконувати чотири арифметичні дії. Починаючи з XIX ст. арифмометри набули широкого розповсюдження. На них виконували навіть дуже складні обчислення, наприклад розрахунки балістичних таблиць для алтилерійських стрільб. Існувала і спеціальна професія – рахівник – людина, яка працювала з арифмометром, швидко і точно виконувала певну послідовність інструкцій (таку послідовність інструкцій почали називати програмою). Але багато обчислень виконувались дуже повільно. Причина проста – при таких обчисленнях вибір виконуваних дій і записування результатів виконувалась людиною,а швидкість її роботи досить обмежена.

В першій половині XIX ст. англійський математик Чарльз Беббідж намагався побудувати універсальний обчислювальний пристрій – Аналітичну машину, яка повинна була виконувати обчислення без участі людини. Для цього вона повинна була вміти виконувати програми, які вводилися з допомогою перфокарт (карт з цупкого паперу з інформацією, яка наносилася з допомогою дірок) і мати «склад» для запам’ятовування даних і проміжних результатів (пам’ять). Беббідж не зміг довести до кінця роботу по створенню Аналітичної машини – вона виявилася занадто складною для техніки того часу. Але він розробив всі основні ідеї, і в 1943 р. американець Говард Ейкен на основі техніки XX ст. – електромеханічних реле – зміг побудувати на одному з підприємств фірми IBM таку машину під назвою «Марк-1». Ще раніше ідеї Беббіджа були перевідкриті німецьким інженером Кондратом Цузе, який в 1941р. побудував аналогічну машину.

До цього часу необхідність в автоматизації обчислень стала настільки великою, що над створенням машин такого типу працювало кілька груп розробників. Починаючи з 1943 р. група спеціалістів під керівництвом Джона Мочлі і Преспера Ейкарта в США почала конструювати схожу машину на основі електронних ламп, а не на реле. Їхня машина ENIAC працювала в тисячу раз швидше, але для задання її програми необхідно було на протязі декількох годин або навіть декількох днів під’єднювати певним чином проводи. Щоб спростити процес задання програми, Мочлі і Ейкерт почали конструювати нову машину, яка могла б зберігати програму в своїй пам’яті. В 1945 р. до роботи був залучений знаменитий математик Джон фон Нейман, який підготував доповідь про цю машину. Доповідь була розіслана багатьом вченим і отримала широку популярність, оскільки в ній фон Нейман ясно і просто сформулював загальні принципи функціонування універсальних обчислювальних пристроїв, тобто комп’ютерів.

Перший комп’ютер, який базувався на принципах фон Неймана, був побудований в 1949 р. англійцем Морісом Уілкінсом. З появою комп’ютерів виникла наука інформатика.

Інформатика – комплексна наукова й інженерна дисципліна, що вивчає всі аспекти проектування, створення, оцінювання, функціонування комп’ютерних систем оброблення інформації, їх застосування і вплив на різні галузі соціальної практики.

Термін «informatique» запроваджено у Франції в середині 60-х років XX ст., коли розпочалося широке використання обчислювальної техніки.

Одним із базових понять інформатики й ОТ є поняття алгоритму якправила перетворення інформації. Алгоритм указує, які операції оброблення даних і в якій послідовності необхідно виконувати, щоб одержати розв’язок задачі.

Алгоритм – точний припис, що визначає обчислювальний процес, який веде від початкових даних, що змінюються, до шуканого результату.

З нього починається робота над програмою і від якості алгоритму залежить її успішне створення. Тому вміння програмувати в значній мірі означає розробляти хороші алгоритми і застосовувати вже відомі.

На сьогодні існує велика кількість різноманітних мов програмування, кожна з яких має свої певні переваги і недоліки. В цьому розмаїтті не завжди легко зробити свій вибір на користь якоїсь певної мови програмування.

Для реалізації поставленої задачі вибрано середовище TurboPascal. Алгоритмічна мова Pascal була створена Н. Віртом на початку 70–их років. Завдяки зусиллям розробників ця мова програмування стала потужним інструментом професійних програмістів, не втративши простоти і якості, властивих цій мові від народження.

Розробник системи TurboPascal – фірма BorlandInternational, яка виникла в 1984 році і за порівняно короткий час неодноразово дивувала користувачів персональних ЕОМ своїми Turbo- системами. Було випущено кілька версій TurboPascal: 3.0, 4.0, 5.0, 5.5, 6.0, 7.0 PascalForWindow, BorlandPascal.

Головні особливості середовища TurboPascal:

· широкий спектр типів даних, можливість обробки рядкових та структурних типів даних;

· достатній набір операторів управління розгалуженнями та циклами;

· добре розвинутий апарат підпрограм та зручні конструкції роботи з файлами;

· великі можливості управління всіма ресурсами ПЕОМ;

· різноманітні варіанти стикування з мовою Асемблера;

· підтримка ідей об’єктно - орієнтованого програмування.

Саме з огляду на ці особливості програмну реалізацію курсового проекту було здійснено в середовищі TurboPascal.

1. Теоретична частина

1.1Постановка задачі

Системи лінійних рівнянь.

Розв’язком деякої множини (системи) рівнянь

F1 (x1, x2, …, xn) = 0, …, Fm (x1, x2, …, xn) = 0

з невідомими x1, x2, …, xn називається множина значень невідомих, які перетворюють одночасно всі рівняння системи в тотожності. Система рівнянь вважається розв’язаною, якщо знайдено всі такі значення невідомих або доведено, що не існує набору значень невідомих, які перетворювали б одночасно всі рівняння системи в тотожності. В останньому випадку кажуть, що система не має розв’язків або що вона несумісна.

Систему рівнянь часом записують, об’єднуючи рівняння фігурною дужкою.

Дві системи рівнянь вважають еквівалентними, якщо вони мають одну й ту саму множину розв’язків. (Дві несумісні системи за означенням вважаються еквівалентними.)

Кажуть, що система рівнянь (S) еквівалентна двом системам рівнянь (S1) і (S2), якщо множина розв’язків системи (S) збігається з об’єднанням множин розв’язків систем (S1) і (S2).

Властивості систем рівнянь:

1) При заміні будь-якого рівняння системи еквівалентним рівнянням утворюється еквівалентна система.

2) Якщо одне з рівнянь системи (S) еквівалентне деяким двом рівнянням, то початкова система (S) еквівалентна двом системам (S1) і (S2), в кожній з яких це рівняння замінене на одне з рівнянь еквівалентної сукупності, а решта залишена без змін.

Системою s лінійних алгебраїчних рівнянь з n невідомими x1, x2, …, xnназивається система вигляду

a11x1 + a12x2 +…+ a1nxn = b1,

a21x1 + a22x2 +…+ a2nxn = b2,

. . . . . . . . . . . . . . . . . . . . . .

as1x1 + as2x2 +…+ asnxn = bs.

Величини a11, a12, …, a1n, a21, a22, …, a2n, …, as1, as2, …, asn називаються коефіцієнтами даної лінійної системи рівнянь. Індекси біля коефіцієнтів лінійної системи означають: перший індекс показує номер рівняння системи, другий індекс показує номер невідомого, при якому стоїть даний коефіцієнт. Так, наприклад, a25 – коефіцієнт, що стоїть у другому рівнянні системи при невідомому х5.

Величини b1, b2, ...,bs називаються вільними членами першого, другого, ..., s-го рівнянь системи. Система рівнянь називається однорідною, якщо всі числа bj дорівнюють нулю (j=1, 2, 3, ..., s), і неоднорідною, якщо хоча б одне bj відмінне від нуля.

Упорядкована множина n чисел k1, k2, k3, …, kn називається розв’язком системи, якщо при підстановці його в систему замість невідомих x1, x2, x3, …, xn усі рівняння системи перетворюються в тотожність. Система рівнянь називається сумісною, якщо вона має хоча б один розв’язок, і несумісною, якщо вона не має жодного розв’язку.

Сумісна система лінійних рівнянь називається визначеною, якщо вона має єдиний розв’язок, тобто існує тільки один набір n чисел k1, k2, k3, …, kn, який перетворює всі рівняння системи в тотожності.

Сумісна система лінійних рівнянь називається невизначеною, якщо розв’язків більше ніж один.

Система однорідних рівнянь завжди має нульовий розв’язок:

x1 = x2 = x3 = … = xn = 0

Якщо система однорідних рівнянь має ненульовий розв’язок k1, k2, k3,..., kn (тобто хоча б одне з чисел ki (i = 1 ,2,…, n) відмінне від нуля), то така система має і незліченну множину розв’язків вигляду lk1, lk2, …, lkn, де l - будь-яке число.

1.2Розв’язання системи лінійних рівняньметодом Гаусса

Одним з найпоширеніших методів розв’язування систем алгебраїчних рівнянь є метод послідовного виключення невідомих – метод Гаусса. Цей метод ґрунтується на деяких перетвореннях системи лінійних рівнянь, внаслідок яких дістанемо систему, еквівалентну початковій системі.

Метод Гаусса ґрунтується на деяких перетвореннях системи лінійних рівнянь, внаслідок яких дістанемо систему, еквівалентну початковій системі.

Алгоритм гауссових вилучень полягає у послідовному застосуванні до системи таких елементарних перетворень:

1) множення рівняння системи на число, відмінне від нуля;

2) додавання до одного рівняння іншого, помноженого на довільне число;

3) зміна місцями двох рівнянь в системі.

Після елементарних перетворень система стає рівносильною. Якщо система лінійних рівнянь має вигляд