Автор работы: Пользователь скрыл имя, 24 Марта 2011 в 19:51, курсовая работа
В данной курсовой работе написано решение нахождения произведения элементов некоторой квадратной матрицы через написанную функцию, что существенным образом облегчает решение пользователем этой задачи. В качестве языка программирования выбран изучаемый на занятиях по дисциплине «Алгоритмические языки и программирование» язык программирования Турбо Паскаль. К достоинством языка Турбо Паскаль следует отнести такие его характеристики, как модульность, универсальность, удобство работы с массивами и т.д.
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
РЯЗАНСКИЙ
ГОСУДАРСТВЕННЫЙ
УНИВЕРСИТЕТ
КАФЕДРА ВЫЧИСЛИТЕЛЬНОЙ И ПРИКЛАДНОЙ МАТЕМАТИКИ
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе по дисциплине
«АЛГОРИТМИЧЕСКИЕ ЯЗЫКИ И ПРОГРАММИРОВАНИЕ»
Выполнил:
студент группы З-86
Бирюков
И.В.
Проверил: доцент кафедры ВПМ
Новичков В.С.
Рязань 2008
Рязанский государственный радиотехнический университет
Факультет вычислительной техники
Кафедра вычислительной и прикладной математики
ЗАДАНИЕ
на курсовую работу по дисциплине
«Алгоритмические языки и программирование»
Студенту Бирюкову И.В. группы З-86
Составить
подпрограмму-функцию
A = B + BT
* C *B
Где A, B, C – квадратные матрицы размером 5х5
Элементы
матрицы B определить по формуле
Элементы
матрицы С задать произвольно.
Дополнительно рекомендуемая литература
Дата выдачи задания: 20.09.2008.
Дата выполнения
задания: 1.12.2008.
Преподаватель: Новичков В.С.
Современные
средства вычислительной техники и
ЭВМ позволяют существенным образом
повысить эффективность деятельности
инженеров при решении
В данной
курсовой работе написано решение нахождения
произведения элементов некоторой
квадратной матрицы через написанную
функцию, что существенным образом
облегчает решение
При решении поставленной задачи необходимо выполнить следующие действия:
При отладке с программы с целью контроля вычислений после каждого указанного пункта будем производить печать матриц. Печать целесообразно реализовать с помощью подпрограммы. Пункты 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 Укрупненная схема алгоритма
решения задачи
Проведем
детализацию в
Ввод элементов матрицы 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 Детализация нахождения минимальных элементов
Полученные
в результате детализации отдельные
алгоритмы объединим в
Разработка программы и ее описание
Схема полного алгоритма программы приведена на рис. 9.
Рис. 9 Полный алгоритм программы
Инструкция по пользованию разработкой программы
Для выполнения данной программы обязательными аппаратный и программные требования:
Заполнение матрицы происходит случайным образом, с помощью функции 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
Информация о работе Нахождение произведения квадратной матрицы через функцию