47559 (Метод Крамера)

2016-07-30СтудИзба

Описание файла

Документ из архива "Метод Крамера", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "47559"

Текст из документа "47559"

Зміст

Вступ

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

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

1.2 Методи роз взування задачі

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

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

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

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

Висновки

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

Додатки

Вступ

Обчислювальну техніку останніми роками широко застосовують у всіх сферах діяльності людини. Вона стала каталізатором науково-технічного прогресу. Бурхливий розвиток ЕОМ сприяв широкому процесу математизації науки, техніки і господарства в цілому. Саме розробка і застосування математичних методів розв’язування прикладних задач на базі ЕОМ є предметом сучасної математики.

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

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

Завдання на курсовий проект передбачає розробку програмного забезпечення для розв’язку задачі математичного характеру. Для її реалізації я вибрав мову Turbo Pascal 7.0.

Паскаль – гнучка і розвиненута в відношенні типів даних мова. Привабливі його рекурсивні можливості, а також підтримка технології об’ектно-орієнтовного програмування.

Розробником ціїє мови був швейцарський вчений Ніклаус Вірт, який створив Паскал ще в 70-х роках. Турбо Паскаль фірми Borland являється розширенням стандарта Мови і має також інтегроване середовище, яке набагато прискорює і полегшує процес розробки програм. Цей прграмний продукт пройшов через 6 версій, після чого і появився Турбо Паскаль 7.0.

Головні особливості мови Turbo Pascal:

Широкий спектр даних.

Можливість обробки стрічкових та структурних даних.

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

Добре розвинутий апарат підпрограм.

Зручні конструкції роботи з файлами.

Великі можливості керування всіма ресурсами комп’ютера.

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

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

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

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

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

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

(I=1.2…..n) (1)

Систему (1) можна записати у вигляді одного матричного рівняння

AX=B, (2)

де

матриця коефіцієнтів (індекс і вказує рівняння, якому належить коефіцієнт, а індекс j – змінну, при якій він стоїть),

,

відповідно стовпець вільних членів і стовпець змінних.

Упорядкована сукупність п чисел , яка, будучи підставленою в систему (1) замість , перетворює всі рівняння в правильні числові рівності, називається розв’язком системи (1)

то вона має єдиний розв’язок. Його можна обчислити за формулами Крамера.

(k=1,2,…,n),

де матрицю дістають з матриці А, замінивши її k-й стовпець стовпцем вільних членів.

Методи розв’язування систем лінійних рівнянь можна поділити на дві групи: точні й ітераційні.

Точними називають такі методи, які дають змогу знайти точний розв’язок системи (1) за допомогою виконання скінченої кількості арифметичних операцій у припущенні, що всі обчислення виконуються точно (без округлень), а коефіцієнти системи і вільні члени – точні числа. Але на практиці всі обчислення виконуються з обмеженою кількістю десяткових розрядів, а ірраціональні коефіцієнти і вільні члени, якщо такі є, замінюються раціональними числами. Тому в процесі обчислення вдаються до округлень, а це означає, що розв’язки, які обчислюються за точними методами, фактично є наближеними числами з певними похибками (похибками округлень). До точних належать метод Гаусса, метод квадратних коренів, правило Крамера тощо.

Інтераційними називають такі методи, які дають змогу знайти наближений розв’язок системи (1) із заздалегідь вказаною точністю шляхом виконання скінченої кількості арифметичних операцій, хоч самі обчислення можуть проводитись і без округлень, а коефіцієнти і вільні члени системи бути точними числами. Точний розв’язок системи (1) за допомогою ітераційних методів може знайти тільки теоретично як границю збіжного нескінченного процесу. Розв’язуючи системи рівнянь ітераційними методами, крім похибок округлення, треба враховувати похибку методу. До ітераційних належать метод ітерації, метод Зейделя тощо.

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

Програма повинна забезпечувати виконання таких операцій:

ввід коефіцієнтів системи рівнянь та вільних членів;

обчислення визначників системи та знаходження розв’язків системи;

вивід систем рівнянь та її розв’язків на екран.

Для реалізації поставленого завдання в середовищі Turbo Pascal 7.0 розроблено програму KRAMER.PAS. Перелічені вище операції реалізуються в програмі за допомогою процедур.

1.2 Методи розв’язування задачі

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

(1)

Систему (1) можна також записати так:

, і=1, 2, 3.

Тут - деякі задані числа, а x, y, z – невідомі, які потрібно знайти.

Як нам вже відомо, тройка чисел називаються рішенням системи (1), якщо при підстановці їх в рівняння системи замість x, y і z вийдуть вірні числові рівності.

Розглянемо спочатку випадок, коли всі коефіцієнти рівнянь системи (1) рівні нулю:

і=1, 2, 3.

В цьому випадку, якщо всі вільні члени рівнянь системи рівні нулю:

,

то очевидно, люба тройка чисел (x; y; z) являється розв’язком цієї системи. Якщо ж вільні члени рівнянь рівні нулю, то система не має рішень.

Розглянемо тепер більш цікавий випадок, коли не всі коефіцієнти рівнянь системи (1) рівні нулю. Нехай, наприклад, . Тоді система еквівалентна наступній:

Останнє рівняння цієї системи помножимо на і вилучаємо почленно із першого рівняння, в результаті получимо рівняння

. (2)

Аналогічно, помножив останнє рівняння на і вилучаючи почленно із другого рівняння будемо мати

. (3)

Очевидно, що система

(4)

у якої перше рівняння виходить із (2), а друге із (3) множенням на , еквівалентна системі (1).

Таким чином, якщо 0, то дослідження системи (1) зводиться до дослідження системи двох лінійних рівнянь з двома невідомими:

(5)

Розглянемо спочатку випадок, коли всі коефіцієнти рівнянь системи (5) дорівнюють нулю. Тоді, якщо вільні члени рівнянь системи (5) рівні нулю, то люба пара чисел (x;y) являється рішенням системи (5) і, отже, люба трійка чисел (x;y;z), де

,

являється рішенням системи (1). Якщо ж хоча б у одного із рівнянь системи (5) вільний член не дорівнює нулю, то система (5), то і система (1) не мають рішень.

Розглянемо випадок, коли не всі коефіцієнти рівнянь системи (5) рівні нулю. Нехай, наприклад,

Перше рівняння системи (5) помножимо на , друге – на - і додамо; після очевидних перетворень отримаємо рівняння

де

Таким чином, якщо , то система (5) еквівалентна системі

Якщо , то очевидно, люба пара чисел (x;y), де

, (6)

являється рішенням системи (5).

Із (6) і останнього рівняння системи (4) знаходимо

(7)

Аналогічно, якщо і , то люба трійка чисел (x;y;z), де , а y та z знаходяться в формулах (6) і (7), являється рішенням системи (1).

Якщо , а , то система (5), а також і система (1) не мають розв’язків.

Нехай тепер . Тоді

.

Підставивши це значення х в друге рівняння системи (5), знайдемо

,

де

Підставивши отримані значення x і y в третє рівняння системи (4), отримаємо

,

де

.

Випливає, якщо , то система (1) має одне рішення, яке знаходиться за формулами:

.

Ці формули і називаються формулами Крамера.

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

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

Представлена програма реалізується програмою Kramer. Написана на мові Паскаль. Вона включає в себе ряд процедур, які забезпечують виконання вводу, обчислень та виводу на екран розв’язку задачі.

Для зменшення обсягу тіла програми використовується модуль zast.tpu (лістінг модуля додається до проекту), в якому знаходяться всі головні компоненти, які використовують процедури (інтерфейси, описи тощо).

Перед описом процедур здійснюється опис міток (розділ міток) і змінних (розділ змінних). Потім (після опису процедур) іде розділ операторів (тіло програми), що заключається в операторні дужки, тобто Begin…End. В ньому вказується послідовність дій, що повинні використовуватись ЕОМ.

Запуск програми здійснюється таким чином:

Спосіб. З середовища будь-якої операційної оболонки шляхом запуску Kramer.exe (попередньо програма має бути відкомпільована з опцією Destination Memory).

Спосіб. З головного меню інтегрованого середовища Turbo Pascal шляхом вибору опції Run (програма попередньо повинна бути завантажена в ОП – File, Open, Kramer.pas).

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

Про програму

Ввід коефіцієнтів

Результати

Вихід

При виборі певного пункту активізується відповідна процедура. Завершення роботи програми і повернення в середовище системи програмування Turbo Pascal здійснюється при виборі пункту меню “Вихід”. Програма здійснює обчислення системи рівнянь методом Крамера та виводить результати на екран дисплею.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5166
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее