Нахождение произведения квадратной матрицы через функцию

Автор работы: Пользователь скрыл имя, 24 Марта 2011 в 19:51, курсовая работа

Описание работы

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

Файлы: 1 файл

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ.doc

— 1.26 Мб (Скачать файл)

МИНИСТЕРСТВО  ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

РЯЗАНСКИЙ ГОСУДАРСТВЕННЫЙ РАДИОТЕХНИЧЕСКИЙ

УНИВЕРСИТЕТ

КАФЕДРА ВЫЧИСЛИТЕЛЬНОЙ И ПРИКЛАДНОЙ МАТЕМАТИКИ

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовой работе по дисциплине

«АЛГОРИТМИЧЕСКИЕ  ЯЗЫКИ И ПРОГРАММИРОВАНИЕ»

                 
                 
                 
                 
                 
                 
                 
                 
                 
                Выполнил: студент группы   З-86

                Бирюков И.В. 

                Проверил: доцент кафедры ВПМ

                Новичков  В.С.

 
 
 
 
 
 
 
 
 
 
 
Рязань 2008

Оглавление

ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ

Рязанский государственный радиотехнический университет

Факультет вычислительной техники

Кафедра вычислительной и прикладной математики

ЗАДАНИЕ

на курсовую работу по дисциплине

«Алгоритмические  языки и программирование»

Студенту                Бирюкову И.В.          группы    З-86

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

A = B + BT * C *B 

Где A, B, C – квадратные матрицы размером 5х5

Элементы  матрицы B определить по формуле 

 

Элементы  матрицы С задать произвольно. 
 
 
 

Дополнительно рекомендуемая литература

  1. Волков Е.А. Численные методы: Учеб. пособ. 2-е изд., испр. М.: Наука, 1987.
 
 
 
 
 
 

Дата  выдачи задания: 20.09.2008.

Дата выполнения задания: 1.12.2008. 
 
 

Преподаватель: Новичков В.С.

Введение

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

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

Анализ  задания и математическая постановка задачи

При решении  поставленной задачи необходимо выполнить  следующие действия:

  1. Ввести значения элементов массива C.
  2. Ввести значения элементов массива B.
  3. Напечатать значения элементов исходных матриц C и B.
  4. Провести транспонирование матрицы B, т.е. BT := BT.
  5. Умножить матрицу BT на матрицу C: BtC := BT * C.
  6. Умножить матрицу BtC на матрицу B: BtCB := BtC * B.
  7. Сложить матрицу B и матрицу BtCB: A:=B + BtCB.
  8. Найти минимальной значение элементов в третьей строке матрицы A.
  9. Найти минимальной значение элементов в четвертом столбце матрицы B.
  10. Сложить минимальные элементы матрицы A и матрицы B: minA + minB.
  11. Вывод результата на экран.

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

Матрицей будем называть таблицу  чисел

Если m=n, то матрица называется квадратной. Квадратная матрица из n  строк и n столбцов, называется матрицей n-го порядка.

Умножение матриц А и В, т.е. получение произведения этих матриц E = АВ, возможно лишь в том случае, когда число столбцов матрицы А равно числу строк матрицы В . Такие матрицы называются согласованными.

Рис. 1

Произведением двух согласованных матриц Аmk={aij}mk и  Вkn={bij}kn называется такая третья матрица  Сmn={cij}mn для кoторой каждый элемент cij , i=1,m, j=1,n.вычисляется по формуле (рис. 1).

Матрица АТ, полученная из данной матрицы А заменой каждой её строки столбцом с тем же номером, называется транспонированной относительно матрицы А . Если матрица А имеет размеры m x n, то матрица АТ имеет размеры n x m.

Пример:

Таким же образом транспонируется матрица B.

Суммой  двух прямоугольных матриц A = [aij] и B = [bij] одинаковых размеров m x n называется матрица C = [cij] тех же размеров, элементы которой равны суммам  соответствующих элементов данной матрицы.

Разработка  схемы алгоритма и ее описание

По результатам  анализа задания можно составить  укрупненную схему алгоритма  последовательной структуры (рис. 2)

Рис. 2 Укрупненная  схема алгоритма

решения задачи

Проведем  детализацию в последовательности, определяемой нумерации блоков на рис. 2.

Ввод  элементов матрицы  C и B. В данном блоке определен ввод значений элементов квадратных матриц C и B размером 5х5. Всего должно быть введено элементов 25 значений в матрицу C, заполнение в матрице в программе происходят с клавиатуры пользователем, структурограмма которой приведена на рис. 3.

    Рис. 3 Структурограмма заполнения

    массива C с клавиатуры 

Матрица B заполняется по формуле:

Структурограмма, которая приведена на рис. 4.

    Рис. 4 Структурограмма заполнения

      массива B по формуле 

Печать  исходных матриц B и C. (а также отладочная печать матриц BT, BtC, BtCB, A) реализовано с помощью подпрограммы, структурограмма которой приведена на рис. 5.

    Рис. 5 Структурограмма печати исходных матриц

Умножение матриц представлено соответствующей подпрограммой, структурограмма которой приведена на рис. 6.

    Рис. 6 Структурограмма подпрограммы

умножения квадратных матриц

Транспонирование  матриц B реализуется в вспомогательные массивы BT по схеме приведенной на рис. 7.

Рис. 7 Детализация процесса транспонирования 

Сложение  матрицы B и BtCB представим в виде выражения над массивами следующим оператором:

A = B + BtCB

Нахождение  суммы минимальных  элементов в третьей строке матрицы B и в четвертом столбце матрицы A. Схема приведена на рис. 8.

Рис. 8 Детализация  нахождения минимальных элементов

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

 

Разработка  программы и ее описание

Схема полного  алгоритма программы приведена  на рис. 9.

Рис. 9 Полный алгоритм программы

 

Инструкция  по пользованию разработкой  программы

Для выполнения данной программы обязательными  аппаратный и программные требования:

  1. процессор Pentium 600 МГц;
  2. память ОЗУ 128Мб;
  3. видеоадаптер VESA- совместимый VGA;
  4. жесткий диск: 2Гб;
  5. тип клавиатуры: 101-клавиша;
  6. мышь;
  7. операционная система Windows 98

Заполнение  матрицы происходит случайным образом, с помощью функции random. Числа берутся от 0 до 9, тип целый (real) рис. 10.

Рис. 10 Матрица C заполнена целыми

числами от 0 до 9

Переменные  используемые в данной программе  приведены в таблице 1.

    Табл. 1

Переменная Тип Назначение
A[5,5] real Массив в  который помещается результат сложения матрицы B[5,5] и BtCB[5,5]
B[5,5] real Массив в  котором хранится 2-ая матрица
C[5,5] real Массив в  котором хранится 3-ая матрица
BT[5,5] real Массив в  который помещается результат транспонирования матрицы B
BtC[5,5] real Массив в  который помещается результат умножения матрицы BT [5,5] на С[5,5]
BtCB[5,5] real Массив в  который помещается результат умножения  матрицы BtC [5,5] на B[5,5]
minA real В переменную перемещается минимальный элемент 4-ого столбца  матрицы A
minB real В переменную перемещается минимальный элемент 3-ей строки матрицы B
i, j Integer Переменные  которые используются в качестве счетчиков в циклах
 

 

Решение контрольных примеров и проверка правильности функционирования программы

Запускаем программу, она сразу же заполняет массивы C и B:

 

Транспонируем матрицу B:

 

Произведение  матриц BtC := BT * C: 

 

Произведение  матриц BtCИ := BtC * B:

Сумма матриц A := B + BtCB

Информация о работе Нахождение произведения квадратной матрицы через функцию