Операции над Матрицами
Контрольная работа, 27 Июня 2014, автор: пользователь скрыл имя
Краткое описание
Программа работает в текстовом режиме. Пользователь выбирает операцию, вводит с клавиатуры размер матрицы и значения элементов матрицы. Программа выполняет заданную операцию и выводит на экран ее результат. Для реализации в программе предлагаются следующие операции: перемножение двух матриц, транспонирование, вычисление определителя, вычисление обратной матрицы, сложение (вычитание) двух матриц.
Вложенные файлы: 1 файл
kursovik.doc
— 123.00 Кб (Скачать файл)If ((1>=m2) or (m2>=10) or (1>=n2) or (n2>=10) {Условие ошибки}
else begin
WriteLn ('Введите вторую матрицу');
for i2:=1 to m2 do
end;
for i2:=1 to m2 do begin {Вывод второй матрицы}
end;
m3:=m1; n3:=n2;
for i3:=1 to m3 do
for j3:=1 to n3 do begin
{Итоговая формула}
begin {Вывод произведения}
writeln;
writeln('Произведение:');
for i3:=1 to m1 do begin
end;
end;
End; {End Case}
ReadKey;
END. {Конец программы}
Пример работы программы
1. Операция нахождения
- При появлении на экране меню с выбором операций, выбираем 1.
- На предложение ввести кол-во строк матрицы, выбираем 3.
- Кол-во столбцов – 3.
- Вводим матрицу: æ 1 4 5 ö
ç 5 3 7 ÷
è 8 1 4 ø
- Программа выдает ответ: det = 54.
2. Операция нахождения обратной матрицы:
1) При появлении на экране меню с выбором операций, выбираем 2.
2) На предложение ввести кол-во строк матрицы, выбираем 3.
3) Кол-во столбцов – 3.
4) Вводим матрицу: æ 1 4 5 ö
ç 5 3 7 ÷
è 8 1 4 ø
5) Программа выдает ответ: æ 1,851*100 9,259*100 1,481*10 ö
ç 7,407*100 5,555*100 1,851*100 ÷
è 9,259*100 1,296*10 7,407*100 ø.
- Операция транспонирования матрицы:
1) При появлении на экране меню с выбором операций, выбираем 3.
2) На предложение ввести кол-во строк матрицы, выбираем 3.
3) Кол-во столбцов – 3.
4) Вводим матрицу: æ 1 4 5 ö
ç 5 3 7 ÷
è 8 1 4 ø
5) Программа выдает ответ: æ 1 5 8 ö
ç 4 3 1 ÷
è 5 7 4 ø.
- Операция сложения матриц:
1) При появлении на экране меню с выбором операций, выбираем 3.
2) На предложение ввести кол-во строк матрицы, выбираем 3.
3) Кол-во столбцов – 3.
4) Вводим матрицу: æ 1 4 5 ö
ç 5 3 7 ÷
è 8 1 4 ø
5) На предложение ввести кол-во строк матрицы, выбираем 3.
6) Кол-во столбцов – 3.
7) Вводим матрицу: æ 2 8 10 ö
ç 10 6 14 ÷
8) Программа выдает ответ: æ 3 12 15 ö
ç 15 9 21 ÷
- Операция вычитания матриц:
1) При появлении на экране меню с выбором операций, выбираем 3.
2) На предложение ввести кол-во строк матрицы, выбираем 3.
3) Кол-во столбцов – 3.
4) Вводим матрицу: æ 1 4 5 ö
ç 5 3 7 ÷
è 8 1 4 ø
5) На предложение ввести кол-во строк матрицы, выбираем 3.
6) Кол-во столбцов – 3.
7) Вводим матрицу: æ 2 8 10 ö
ç 10 6 14 ÷
8) Программа выдает ответ: æ -1 -4 -5 ö
ç -5 -3 -7 ÷
è -8 -1 -4 ø.
- Операция перемножения матриц:
1) При появлении на экране меню с выбором операций, выбираем 3.
2) На предложение ввести кол-во строк матрицы, выбираем 3.
3) Кол-во столбцов – 3.
4) Вводим матрицу: æ 1 4 5 ö
ç 5 3 7 ÷
è 8 1 4 ø.
5) На предложение ввести кол-во строк матрицы, выбираем 3.
6) Кол-во столбцов – 3.
7) Вводим матрицу: æ 2 8 10 ö
ç 10 6 14 ÷
8) Программа выдает ответ: æ 122 42 106 ö
ç 152 72 148 ÷
è 90 78 126 ø.
- Первый исключительный случай:
1) При появлении на экране меню с выбором операций, выбираем 1.
2) На предложение ввести кол-во строк матрицы, выбираем 0.
3) Кол-во столбцов – 3.
- Программа выдает: «ОШИБКА!!!».
- Второй исключительный случай:
1) При появлении на экране меню с выбором операций, выбираем 1 (2, 3).
2) На предложение ввести кол-во строк матрицы, выбираем 3.
3) Кол-во столбцов – 2.
4) Вводим матрицу: æ 1 4 ö
ç 5 3 ÷
è 8 1 ø.
- Программа выдает: «ОШИБКА!!!».
- Третий исключительный случай:
1) При появлении на экране меню с выбором операций, выбираем 4.
2) На предложение ввести кол-во строк матрицы, выбираем 3.
- Кол-во столбцов – 3.
4) Вводим матрицу: æ 1 4 5 ö
ç 5 3 7 ÷
è 8 1 4 ø.
5) На предложение ввести кол-во строк матрицы, выбираем 2.
6) Кол-во столбцов – 2.
- Программа выдает: «ОШИБКА!!!».
- Четвертый исключительный случай:
1) При появлении на экране меню с выбором операций, выбираем 6.
2) На предложение ввести кол-во строк матрицы, выбираем 3.
3) Кол-во столбцов – 3.
4) Вводим матрицу: æ 1 4 5 ö
ç 5 3 7 ÷
è 8 1 4 ø.
5) На предложение ввести кол-во строк матрицы, выбираем 2.
6) Кол-во столбцов – 2.
- Программа выдает: «ОШИБКА!!!».
Выводы по работе
Для проверки результатов, выдаваемых программой, использовался математический пакет MathCAD 2001 Professional.
Существенный недостаток программы в том, что при нахождении обратной матрицы и определителя, программа может работать только с матрицами, размером не превышающие 3х3. Это связано со значительным усложнением программы, в случаи необходимости выполнения вышеперечисленных операций над матрицами большего размера.
При написании программы использовалась следующая литература:
- Фаронов В.В. «TurboPascal 7.0, начальный курс. Учебное пособие».
- Мизрохи С.В. «TurboPascal и объектно-ориентированное програмирование».
- Голубев А.Б., Сидоров Ю.Н., Чередниченко А.И., Яценко И.В. «Основы программирования на языке Pascal».
- Боревич Э.И. «Определители и матрицы».
- Гутер Р.С., Резниковский П.Т. «Программирование и вычислительная математика».
- Письменный Д.Т. «Конспект лекций по высшей математике», 1 часть.
- Владимирский Б.М., Горстко А.Б., Ерусалимский Я.М. «Математика. Общий курс».