Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364150
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62792)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21320)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21697)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8694)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3463)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20645)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Курсовая работа: Вычисление определителя матрицы прямым методом

Название: Вычисление определителя матрицы прямым методом
Раздел: Рефераты по информатике, программированию
Тип: курсовая работа Добавлен 02:01:19 12 февраля 2011 Похожие работы
Просмотров: 4265 Комментариев: 2 Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать

Федеральное агентство по образованию

Государственное образовательное учреждение высшего профессионального образования

Тульский государственный университет

Кафедра “Автоматика и телемеханика”

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОЙ РАБОТЕ

по дисциплине: «Программирование на языке высокого уровня»

на тему: «Вычисление определителя матрицы прямым методом»

Выполнил: студент группы 260661

Ю.В. Красов

Проверил: ассистент кафедры АТМ

А.С. Карцева

Тула 2008


СОДЕРЖАНИЕ

ВВЕДЕНИЕ

1. ВЫБОР И ОБОСНОВАНИЕ ЧИСЛЕННОГО МЕТОДА РЕШЕНИЯ ЗАДАЧИ

1.1 Определение матрицы

1.2 Определение детерминанта

1.3 Метод исключения Гаусса. Вычисление определителя методом исключения

2. АЛГОРИТМ РАБОТЫ ПРОГРАММЫ

2.1 Структура алгоритма и данных

2.2 Схема алгоритма

3. ТЕКСТ ПРОГРАММЫ

3.1 Описание переменных и структур данных

3.2 Текст программы на языке Pascal

4. ТЕСТОВАЯ ЗАДАЧА

4.1 Математическое решение задачи

4.2 Решение, полученное с использованием разработанного программного обеспечения

5. ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЮ

ЗАКЛЮЧЕНИЕ

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ


ВВЕДЕНИЕ

Современная математика ориентирована на использование компьютеров для прикладных расчетов. Любые математические приложения начинаются с построения модели явления (изделия, действия, ситуации или другого объекта), к которому относится изучаемый вопрос. Классическими примерами математических моделей могут служить определенный интеграл, уравнение колебаний маятника, уравнение теплообмена, уравнения упругости, уравнения электромагнитных волн и другие уравнения математической физики и даже модель формальных рассуждений – алгебру Буля.

Основополагающими средствами изучения математических моделей являются аналитические методы: получение точных решений в частных случаях (например, табличные интегралы), разложения в ряды. Определенную роль издавна играли приближенные вычисления. Например, для вычисления определенного интеграла использовались квадратурные формулы.

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

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

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

С помощью компьютера возможно применение математических методов и в нетрадиционных областях, где не удается построить компактные математические модели вроде дифференциальных уравнений, но удается построить модели, доступные запоминанию и изучению на компьютере. Модели для компьютеров в этих случаях представляют собой цифровое кодирование схемы, изучаемого объекта (например, языка) и отношений между его элементами (словами, фразами). Сама возможность изучения таких моделей на компьютере стимулирует появление этих моделей, а для создания обозримой модели необходимо выявление законов, действующих в исходных объектах. С другой стороны, получаемые на компьютере результаты (например, машинный перевод упрощенных текстов с одного языка на другой) вносят критерий практики в оценку теорий (например, лингвистических теорий), положенных в основу математической модели.

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

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

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


1. ВЫБОР И ОБОСНОВАНИЕ ЧИСЛЕННОГО МЕТОДА РЕШЕНИЯ ЗАДАЧИ

1.1 Определение матрицы

Матрицей называют совокупность чисел, расположенных в прямоугольной таблице

,

состоящей из m строк и nстолбцов.

Числа называют элементами матрицы. Первый индекс в обозначении элемента ( i ) указывает на номер строки, а второй индекс ( j )- на номер столбца, в которых расположен этот элемент.

В нашем случае () матрица называется прямоугольной размера . Если число строк в матрице равно числу столбцов (m=n), то матрицу называют квадратной порядка m.

1.2 Определение детерминанта

Для квадратной матрицы может быть введено понятие детерминанта (определителя). Детерминант матрицы [A] обозначают

6
или .

Детерминантом матрицы порядка n>1 называют число

, (1)

где - детерминант матрицы порядка n-1, полученной из матрицы [A] вычеркиванием первой строки и k -ого столбца.

Матрица порядка 1 состоит из одного числа, и ее детерминант по определению считают равным этому числу:

(2)

Детерминант матрицы второго порядка в соответствии с (1) и (2) можно вычислить по следующей формуле:

.

Для матрицы третьего порядка


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

Число называют дополнительным минором элемента . Для произвольного элемента матрицы также можно ввести понятия дополнительного минора: - это определитель матрицы, получаемой из исходной вычеркиванием i -ой строки и j-ого столбца. Например, для матрицы [A] третьего порядка дополнительным минором элемента будет определитель

Одним из важных свойств определителей является то, что при перестановке местами двух строк или двух столбцов определителя, он должен быть умножен на -1:

.

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

1.3 Метод исключения Гаусса. Вычисление определителя методом исключения

Пусть дана матрица

Метод Гаусса можно интерпретировать как метод, в котором матрица приводится к верхней треугольной форме (прямой ход).

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

Запишем общие формулы метода Гаусса. Пусть проведено исключение к элементов из (k-1)-го столбца. Тогда останутся строки с ненулевыми элементами ниже главной диагонали.

Умножим k-ю строку на число

m > k (3)

и вычтем из m-й строки. Первый ненулевой элемент этой строки обратится в нуль, а остальные изменятся по формулам

(4)

k < m(5)

Проведя вычисления по этим формулам при всех указанных индексах, обратим в нуль элементы k-го столбца, лежащие ниже главной диагонали. Аналогичная процедура приводит матрицу системы к верхней треугольной форме, при этом весь процесс приведения называется прямым ходом метода Гаусса.

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

(6)

где k- количество перестановок строк при использовании метода исключения с выбором главного элемента.

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

Для уменьшения ошибок округления поступают следующим образом. Среди элементов первого столбца каждой промежуточной матрицы выбирают наибольший по модулю (главной) элемент и путем перестановки i-го строки со строкой, содержащей главный элемент, добиваются того, что главный элемент становится ведущим. Такая модификация метода исключения Гаусса называется методом Гаусса с выбором главного элемента. Случай появления нулевых элементов обходится при этом сам собой.

Важным достоинством данного метода, является то, что вычисление определителя требует примерно (2/3)n³ операций, что несравнимо меньше с операциями, при вычислении определителя по правилу Крамера, поэтому метод Гаусса с выбором главного элемента наиболее применим при обработке данных на компьютере.


2. АЛГОРИТМ РАБОТЫ ПРОГРАММЫ

2.1 Структура алгоритма и данных

Задача вычисления определителя матрицы разбивается на несколько подзадач:

1) Заполнение массива начальными данными;

2) Изменение порядка матрицы по желанию пользователя и заполнение нового массива;

3) Ввод и фильтрация вводимых пользователем данных в массив;

4) Вычисление детерминанта;

4.1) Ввод исходных данных в массив

4.2) Выбор главного элемента;

4.3) Замена строк местами;

4.4) Заполнение нового массива;

4.5) Приведение матрицы к верхнему треугольному виду;

4.6) Вычисление определителя матрицы.

Согласно вышеприведенной структуре, программа будет состоять из четырех подпрограмм:

1) Подпрограмма создания формы и ввода начальных данных в массив.

В данной подпрограмме задается начальное число столбцов и строк матрицы (ее порядок), вводятся заголовки матрицы, строк и столбцов в соответствии с заданным размером.

2) Подпрограмма изменения порядка матрицы;

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

3) Подпрограмма фильтрации вводимых пользователем данных, при нажатии на кнопки клавиатуры;

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

4) Подпрограмма вычисления определителя.

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

2.2 Схема алгоритма

На рисунке 1 представлен алгоритм работы программы при возникновении события OnCreate. Процедура TForm1.FormCreate(Sender: TObject).


Рис. 1. Алгоритм работы программы при возникновении события OnCreate

На рисунке 2 представлен алгоритм работы программы при нажатии на кнопку «Изменить размерность массива». Процедура TForm1.Button2Click(Sender: TObject).


Рис. 2. Алгоритм работы программы при нажатии на кнопку «Изменить размерность массива»

На рисунке 3 представлен алгоритм работы программы при вводе данных с клавиатуры (событие OnKeyPress). Процедура TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char).


Рис. 3. Алгоритм работы программы при при вводе данных с клавиатуры (событие OnKeyPress). Процедура TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char)

На рисунке 4 представлен алгоритм работы программы при нажатии на кнопку «Расчет». Процедура TForm1.Button1Click(Sender: TObject).

алгоритм программа pascal матрица определитель


Рис. 4. Алгоритм работы программы при нажатии на кнопку «Расчет»


3. ТЕКСТ ПРОГРАММЫ

3.1 Описание переменных и структур данных

При выполнении программы используются следующие переменные: N – максимальное число строк (столбцов) массива; r, c,max, j, z, p, s, zam – номера строк и столбцов и количество производимых замен строк – все они являются переменными типа integer (целое), переменные detA, k, buf – детерминант, коэффициент и буфер, используемый при замене строк – переменные типа extended (действительное число), а также переменная А – массив, тип массива – двумерный (Massiv = array[1..Nmax,1..Nmax] of extended).

При запуске программы возникает событие «создание формы» (OnCreate), процедура TForm1.FormCreate(Sender: TObject). При этом задается количество строк и столбцов двумерного массива (по умолчанию 4 и 4) StringGrid1.RowCount := N+1; StringGrid1.ColCount := N+1; но ячейки первой строки и первого столбца не редактируемые, они используются для вывода надписей над строками и столбцами, для чего используются функции StringGrid1.Cells [0,r] := ' r = ' + IntToStr(r) и StringGrid1.Cells [c,0] := ' c = ' + IntToStr(c). Вывод данных поочередно в каждую из этих ячеек производится посредством стандартной инструкции for … to … do begin … end.

Нажатие на кнопку влечет за собой возникновение события OnClick процедура TForm1.Button2Click(Sender: TObject). Данные о количестве строк и столбцов массива считываются из поля Edit1. Так как численное значение переменной N имеет целочисленный тип для преобразования строковой записи числа, находящегося в переменной Edit1.Text в целое, используется стандартная функция N:=StrToInt(Edit1.Text).

20
При вводе пользователем данных в поле StringGrid1 происходит событие OnKeyPress, процедура TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char). Посредством стандартной инструкции case Key of, которая позволяет реализовать множественный выбор, происходит фильтрация вводимых пользователем данных. Разрешается ввод только цифр, разделителя (DecimalSeparator), знака «минус» и нажатие клавиши Backspace. Посредством инструкции if Key <> DecimalSeparator then производится выбор одиного из двух возможных вариантов развития программы: разделитель заменяется на правильный, если он введен неверно (Key := DecimalSeparator), либо разделитель оставляется без изменений. Ввод остальных символов запрещается (else key := Chr(0)).

При нажатии на кнопку возникает событие (OnClick), процедура TForm1.Button1Click(Sender: TObject). Задаются начальные значения переменных max:= 1, detA := 1,zam:=0. Производится заполнение массива (A[c,r]:=StrToFloat(StringGrid1.Cells[c,r])), свойство StringGrid1.Cells[c,r] определяет содержимое ячейки с табличными координатами (c,r), строковые значения переменных, находящихся в ячейках (c,r) преобразуются в вещественный тип посредством стандартной инструкции StrToFloat. Стандартная инструкция for … to … do begin … end позволяет выполнять несколько раз действия, заключенные в этой инструкции. Функция abs(A[c,j]) возвращает модуль аргумента.

Инструкция if (stringgrid1.cells [c,r] > stringgrid1.cells [c-1,r]) and (stringgrid1.cells [c,r] < stringgrid1.cells [c+1,r]) thenbegink := k+1; end; используется для выбора одного из вариантов развития программы, т.е. в случае выполнения данного условия число «особых» элементов увеличивается на 1 (k := k+1), если нет, то цикл повторяется до предпоследнего элемента матрицы. Реализует этот выбор стандартная инструкция for … to … do begin … end. Так как переменная detAдействительное число, то для ее преобразования в строковый вид используется инструкция FloatToStrF(detA,fffixed,6,3). Функция zam mod 2 – проверка на четность количества замен строк, если число нечетное, то определитель умножается на -1.

Выход из программы осуществляется нажатием кнопки .

3.2 Текст программы на языке Pascal

unitUnit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids, Menus, Buttons;

type

TForm1 = class(TForm)

StringGrid1: TStringGrid;

Button1: TButton;

Edit1: TEdit;

Label1: TLabel;

Label3: TLabel;

Button2: TButton;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

procedure FormCreate(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

procedure StringGrid1KeyPress(Sender: TObject; var Key: Char);

private

{ Private declarations }

public

{ Public declarations }

end;

const

Nmax=10;

Type

Massiv1 = array[1..Nmax,1..Nmax] of extended;

var

Form1: TForm1;

A : Massiv1;

N, r, c: integer;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);

begin

N := 4;

Edit1.Text := FloatToStr(N);

StringGrid1.RowCount := N+1;

StringGrid1.ColCount := N+1;

Label3.Caption := 'для вычисления определителя матрицы нажмите расчет';

StringGrid1.Cells [0,0] := 'МатрицаА';

for r := 1 to N do begin

StringGrid1.Cells [0,r] := ' строка ' + IntToStr(r);

end;

for c := 1 to N do begin

StringGrid1.Cells [c,0] := ' столбец ' + IntToStr(c);

end;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

N:=StrToInt(Edit1.Text);

StringGrid1.RowCount:=N+1;

StringGrid1.ColCount:=N+1;

for r := 1 to N do begin

StringGrid1.Cells [0,r] := ' строка ' + IntToStr(r);

end;

for c := 1 to N do begin

StringGrid1.Cells [c,0] := ' столбец ' + IntToStr(c);

end;

end;

procedure TForm1.Button1Click(Sender: TObject);

var

detA, k, buf: extended;

max, j, z, p, s, zam:integer;

begin

max:= 1;

detA := 1;

zam:=0;

for c := 1 to N do

for r := 1 to N do

A[c,r]:=StrToFloat(StringGrid1.Cells[c,r]);

for c := 1 to N-1 do begin

for z := c to N-1 do begin

max:=z;

for j := z+1 to N do begin

if abs(A[c,j]) > abs(A[c,max]) then

max:=j;

end;

for p := 1 to N do begin

buf:=A[p,z]; A[p,z]:=a[p,max]; A[p,max]:=buf;

end;

end;

for r := c+1 to N do begin

k := A[c,r]/A[c,c];

for s := 1 to N do begin

A[s,r]:= A[s,r]-A[s,c]*k;

end;

end;

if c<>max then begin

zam := zam+1;

end;

end;

for c := 1 to N do

detA := detA*A[c,c];

if zam mod 2 <> 0 then

detA := (-1)*detA;

label3.Caption := 'Детерминантматрицыравен: ' + FloatToStrF(detA,fffixed,6,3);

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

MessageDlg(Программа вычисляет детерминант (определитель) матрицы методом Гаусса с выбором главного элемента. Внимание!!! Матрицадолжнабытьквадратной!',mtInformation,[mbOK],0);

end;

procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of

#8,'0'..'9', '-' : ;

'.',',':

begin

if Key <> DecimalSeparator then

Key := DecimalSeparator;

end;

else

key := Chr(0)

end;

end;

end.


4. ТЕСТОВАЯ ЗАДАЧА

4.1 Математическое решение задачи

В матрице вида

Определить детерминант.

Решение:

Вычисление определителя данной матрицы вручную целесообразно производить с помощью разложения элементов по 1-й строке по формуле (1). В итоге получится:

(7)

Воспользовавшись правилом Саррюса (правилом треугольников), вычисляются определители третьего порядка входящие в состав выражения (7):

detA = 4(10∙7∙2+(-20) ∙3∙5+5∙7∙10-5∙7∙10-10∙7∙3-5∙(-20) ∙2)-7∙(7,5∙7∙2+(-20) ∙3∙2+7∙3∙10-10∙7∙2-(-20)∙3∙2-7,5∙7∙3)+5∙(7,5∙5∙2+10∙3∙2+3∙5∙10-10∙5∙2-10∙3∙2-3∙5∙7,5)-6∙(7,5∙5∙7+3∙5∙(-20)+10∙7∙2-(-20) ∙5∙2-10∙3∙7-7,5∙7∙5)

detA = 4∙(140-300+350-350-210+200)-7∙(105-120+210-140+120-157,5)+5∙(75+60+150-100-60-112,5)-6∙(262,5-300+140+200-210-262,5)

detA = 4∙(-170)-7∙17,5+5∙12,5-6∙(-170)

detA = 280

Ответ: определитель матрицы равен 280

4.2 Решение, полученное с использованием разработанного программного обеспечения

Введя исходные данные в программу получим следующий результат: «Определитель матрицы равен: 280». Результат, полученный с использованием разработанной программы соответствует результату, вычисленному математически.

Вывод: разработанное программное обеспечение верно вычисляет определитель произвольной матрицы.


5. ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЮ

Для запуска программы необходимо запустить файл Determinant.exe, дважды щелкнув по нему мышью. В появившемся окне при необходимости изменить порядок матрицы, введя значение в поле напротив надписи «Порядок матрицы» и нажав на кнопку «Изменить порядок матрицы». В ячейках таблицы ввести значения элементов матрицы. Вводимые данные должны являться действительными числами, содержать только цифры, знак « - » и разделитель целой и дробной части. После заполнения ВСЕХ элементов матрицы нажать кнопку «Расчет». Ответ будет написан под таблицей в формате: «Детерминант матрицы равен: -280,000»

Выход из программы осуществляется с помощью кнопки .

Внешний вид окна программы представлен на рисунке 5.

Рис. 5. Внешний вид окна программы


ЗАКЛЮЧЕНИЕ

В данной работе были изучены численные методы нахождения определителя матрицы и выбран наиболее оптимальный, с точки зрения реализации его на компьютере – метод исключения с выбором главного элемента. Написана программа с использованием массивов. Данная программа позволяет определить детерминант матрицы размером N×N, размер матрицы задается пользователем, вводимые данные – действительные числа. Вычисление определителя матрицы является второй главной задачей линейной алгебры, и применяется при решении сложных систем линейных уравнений с несколькими неизвестными.

28

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Методические указания по выполнению курсовых работ по дисциплине «программирование» для студентов дневной формы обучения, обучающихся по программе направлений подготовки бакалавров 550200, 553000, 552800. Разработал О.С. Середин, к.ф.-м.н., доцент каф. АТМ. Тула 2003 г.

2. Бахвалов Н.С., Жидков Н.П. Кобельков Г.М. Численные методы. – М.: Лаборатория Базовых Знаний, 2000, – 624с.

3. Волосевич А.А. Язык ObjectPascal и система программирования Delphi. Учебное пособие. Минск: Белорусский государственный университет информатики и радиоэлектроники, 2003, - 61с.

4.

29
Курс лекций по дисциплине "вычислительная математика
29
. Тула 2007, - 162с.
Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Где скачать еще рефератов? Здесь: letsdoit777.blogspot.com
Евгений07:36:54 19 марта 2016
Кто еще хочет зарабатывать от 9000 рублей в день "Чистых Денег"? Узнайте как: business1777.blogspot.com ! Cпециально для студентов!
09:45:18 29 ноября 2015

Работы, похожие на Курсовая работа: Вычисление определителя матрицы прямым методом
Основы дискретной математики
Федеральное агентство по образованию Новомосковский институт (филиал) Государственного образовательного учреждения высшего профессионального ...
with StringGrid1 do begin
stringgrid1.cells [i, 0]:=inttostr(i); end;
Раздел: Рефераты по информатике, программированию
Тип: учебное пособие Просмотров: 4174 Комментариев: 2 Похожие работы
Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать
Проектирование и разработка сетевых броузеров на основе теоретико ...
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ ТАВРИЧЕСКИЙ НАЦИОНАЛЬНЫЙ УНИВЕРСИТЕТ им. В.И.Вернандского МАТЕМАТИЧЕСКИЙ ФАКУЛЬТЕТ КАФЕДРА ИНФОРМАТИКИ ...
Сумма пропускных способностей множества {(xi,xj), xi из X1, Xj из Х2} определяет пропускную способность разреза R : r(R) = c(u),
Procedure CalcMinPath(sender,target:byte) - вычисление оптимального пути отправки;
Раздел: Рефераты по информатике, программированию
Тип: дипломная работа Просмотров: 890 Комментариев: 5 Похожие работы
Оценило: 7 человек Средний балл: 2.9 Оценка: 3     Скачать
Object Pascal
1. Основы языка Object Pascal 1.1. Алфавит языка Основными символами языка Object Pascal являются: - символы _ - 26 больших и 26 малых латинских букв ...
Наружный цикл со счетчиком i в теле цикла содержит два оператора - оператор присваивания (вычисление значения вспомогательной переменной R с целью сокращения времени вычислений) и ...
Процедура c именем ByRef содержит три параметра - переменную X и две константы L и K. Тело процедуры состоит из операторов, заключенных в операторных скобках begin - end.
Раздел: Рефераты по информатике
Тип: реферат Просмотров: 2119 Комментариев: 4 Похожие работы
Оценило: 2 человек Средний балл: 4 Оценка: неизвестно     Скачать
Проектирование Базы Данных для коммерческого предприятия
Выполнил студент группы 31 И 230103 Автоматизированные системы обработки информации и управления (в промышленности) Ярославский государственный ...
порядок следования строк и столбцов может быть произвольным.
if edit1.text='' then begin mark:=0; end
Раздел: Рефераты по информатике, программированию
Тип: дипломная работа Просмотров: 27685 Комментариев: 45 Похожие работы
Оценило: 38 человек Средний балл: 4.9 Оценка: 5     Скачать
Разработка баз данных в Delphi
Создание баз данных в Delphi Урок 1: Настройка BDE Содержание урока 1: Обзор 2 Сущность BDE 2 Алиасы 2 Системная информация утилиты настройки BDE 4 ...
procedure TForm1.NextClick(Sender:
К агрегирующим функциям относятся функции вычисления суммы (SUM), максимального (SUM) и минимального (MIN) значений столбцов, арифметического среднего (AVG), а также количества ...
Раздел: Рефераты по информатике, программированию
Тип: реферат Просмотров: 7949 Комментариев: 3 Похожие работы
Оценило: 1 человек Средний балл: 5 Оценка: неизвестно     Скачать

Все работы, похожие на Курсовая работа: Вычисление определителя матрицы прямым методом (2148)

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

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



Результаты(150512)
Комментарии (1836)
Copyright © 2005-2016 BestReferat.ru bestreferat@mail.ru       реклама на сайте

Рейтинг@Mail.ru