Метод Крамера

Автор работы: Пользователь скрыл имя, 24 Ноября 2013 в 17:42, курсовая работа

Краткое описание

Вычислительная техника в последние годы широко применяются во всех сферах деятельности человека. Она стала катализатором научно-технического прогресса. Бурное развитие ЭВМ способствовал широкому процесса математизации науки, техники и хозяйства в целом. Именно разработка и применение математических методов решения прикладных задач на базе ЭВМ является предметом современной математики.

Содержание

Введение
1. Теоретическая часть
1.1 Постановка задачи
1.2 Методы раз обувка задачи
2. Практическая часть
2.1 Архитектура программы
2.2 Описание программы
2.3 Контрольный пример и результат машинного эксперимента
Вывод
Список литературы
Приложения

Вложенные файлы: 1 файл

Севастьянов.docx

— 100.21 Кб (Скачать файл)

очистка экрана

установки цвета

вывод таблицы вывода

вычисления дельта для  уравнения

вычисления дельта икс

вычисления дельта Игрек

вычисления дельта зет

вычисления икс

вычисления Игрек

вычисления зет

вывод дельта

вывод дельта икс

вывод дельта Игрек

вывод дельта зет

вывод икса

вывод Игрек

вывод зет

пустой ввод

конец процедуры vivid

начало главного блока  программы

установки метки pt

присвоение переменной rob 1

подключения графического режима оператором ini

вывод меню оператором zas

пока переменная q НЕ будет  равен *

если нажата любая клавиша  то выполняются следующие действия

чтения нажатой клавиши  и присвоении ей переменной q

начало цикла по распознаны нажатой клавиши

стрелка "вниз" то если rob> 4 тогда rob = 1, если rob <4 тогда rob = rob +1

стрелка "вверх" то если rob> 1 тогда rob = rob-1, если rob <1 тогда rob = 4

клавиша "Энтер" тогда: распознавание переменной rob если rob = 1 то на экран модуля zas выводится  процедура about, которая выводит информацию о программе, а также осуществляется переход на метку pt

если переменная rob = 2 тогда  то на экран модуля zas выводится процедура vvid в которой описываются все  переменные для процедуры vvid программы, а также вывод рамки для  ввода переменных. Переход на метку pt

если переменная rob = 3 тогда  то на экран модуля zas выводится процедура vyvid в которой описываются все  переменные для процедуры vyviid программы, а также вывод рамки для  ввода переменных. Переход на метку pt

если переменная rob = 3 то осуществляется выход в систему

конец распознанного переменной rob

конец цикла определения  нажатой клавиши

цикл если rob равна

1 тогда очистка экрана  и выполнена процедура punkt1

2 тогда очистка экрана  и выполнена процедура punkt2

3 тогда очистка экрана  и выполнена процедура punkt3

4 тогда очистка экрана  и выполнена процедура punkt4

конец цикла "если rob равно"

конец цикла "если нажата клавиша"

конец цикла "пока q НЕ будет  равна *"

конец главного блока программы

Описание модуля zas.tpu

Интерфейсная секция модуля

unit zast;

{$ N +}

interface

procedure ini;

procedure about;

procedure clear;

procedure punkt1;

procedure punkt2;

procedure punkt3;

procedure punkt4;

procedure vivyd;

procedure vid;

procedure zas;

Процедура ini используется для  подключения графических модулей, а также графического режима.

Процедура about дает пользователю информацию о назначении программы  и разработчика.

Процедура clear возвращает пункты меню в первоначальный вид.

Процедуры punkt1, punkt2, punct3, punct4 маркируют соответственно пункты меню во второй цвет для вида перехода курсора  по пунктам меню.

Процедуры vvid и vyvid обеспечивают вывод рамок для ввода и  вывода данных в программу / с прор.

Процедура zas выводит изображение  главного меню.

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

Испытания любой системы  являются наиболее ответственный и  связан с наибольшими трудностями  и крупнейшими потерями времени.

Отладка и тестирование - важнейшие этапы жизненного цикла  приложений. Нельзя сделать выводы о правильности выполнения программы только на основании того, что она откомпилирована и выдает какие-то числовые данные, ведь в ней все же еще могут содержаться логические ошибки. Поэтому необходимо осуществить "ручную" проверку машинных результатов.

Итак задача: Решить систему  линейных уравнений с тремя неизвестными с помощью формул Крамера

Найдем 

 

Так, как 0, то система имеет одно решение.

Теперь найдем 

Подставив найденные определители в формулы Крамера будем иметь:

 

 

Вывод

В данном курсовом проекте  разработан и описан метод получения результатов решения системы линейных уравнений методом Крамера. Программа отлажена с использованием набора текстовых данных. Контрольный пример разработан вручную для проверки работоспособности программы и результат машинного эксперимента полностью совпали. Поэтому можно использовать данную программу на практике.

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

 

 

Список литературы

Turbo pascal (учебник) / С.А. Немнюгин - СПБ: Издательство "Питер", 2000.

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

Математика для техникумов - Алгебра и начала анализа.

 

 

Приложение 1

(************************************************* ******)

(**)

(* Программа: KRAMER *)

(**)

(* Автор: Филоненко Сеpгiй  *)

(* Copyrigth (c) 2003 S.Filonenko *)

(* Дата создания: беpезень  2003 *)

(**)

(* Используемые процедуры  i функцii:)

(* Vvid *)

(* Vyvid *)

(**)

(************************************************* *******)

program kramer;

uses graph, crt, dos, zast;

label pt;

var rob: integer;

x1, x2, x3, x4, x5, x6, x7, x8, x9, a, b, c: integer;

d, dx, dy, dz, x, y, z: real;

q: char;

procedure vvid;

begin

closegraph;

clrscr;

textcolor (lightblue)

vid;

gotoxy (9,2) readln (x1);

gotoxy (26,2) readln (x2)

gotoxy (42,2) readln (x3)

gotoxy (57,2) readln (a);

gotoxy (9,4) readln (x4)

gotoxy (26,4) readln (x5)

gotoxy (42,4) readln (x6)

gotoxy (57,4) readln (b);

gotoxy (9,6) readln (x7)

gotoxy (26,6) readln (x8);

gotoxy (42,6) readln (x9)

gotoxy (57,6) readln (c);

end;

procedure vyvid;

begin

closegraph;

clrscr;

textcolor (yellow)

vivyd;

d: = x1 * x5 * x9 + x2 * x6 * x7 + x4 * x8 * x3-x3 * x5 * x7-x2 * x4 * x9-x8 * x6 * x1;

dx: = a * x5 * x9 + x2 * x6 * c + b * x8 * x3-x3 * x5 * c-x2 * b * x9-x8 * x6 * a;

dy: = x1 * b * x9 + a * x6 * x7 + x4 * c * x3-x3 * b * x7-a * x4 * x9-c * x6 * x1;

dz: = x1 * x5 * c + x2 * b * x7 + x4 * x8 * aa * x5 * x7-x2 * x4 * c-x8 * b * x1;

x: = dx / d;

y: = dy / d;

z: = dz / d;

gotoxy (9,2); writeln (d);

gotoxy (9,4); writeln (dx);

gotoxy (9,6); writeln (dy)

gotoxy (9,8); writeln (dz)

gotoxy (9,10); writeln (x);

gotoxy (9,12); writeln (y);

gotoxy (9,14); writeln (z);

readln;

end;

begin

pt:

rob: = 1;

ini;

zas;

while q <> '*' do begin

if keypressed then begin

q: = readkey;

case q of

# 80: begin if rob> 4 then rob: = 1; if rob <4 then rob: = rob +1; end;

# 72: begin if rob> 1 then rob: = rob-1; if rob <1 then rob: = 4; end;

# 13: begin if rob = 1 then begin about; goto pt; end;

if rob = 2 then begin vvid; goto pt; end;

if rob = 3 then begin vyvid; goto pt; end;

if rob = 4 then halt;

end;

end;

case rob of

1: begin clear; punkt1; end;

2: begin clear; punkt2; end;

3: begin clear; punkt3; end;

4: begin clear; punkt4; end;

end;

end;

end;

end.

 

Приложение 2

D

1.6000000000E +01 

DX

3.2000000000E +01 

DY

4.8000000000E +01

DZ

1.6000000000E +01

X

2.0000000000E +00

Y

3.0000000000E +00

Z

1.0000000000E +00



Информация о работе Метод Крамера