Государственное образовательное учреждение
высшего профессионального образования
Ульяновский Государственный Университет
Факультет Математики и Информационных технологий
Кафедра информационных технологий
КУРСОВАЯ РАБОТА
Программирование действий над матрицами на языке С++.
Прикладная информатика 08.08.01
Проект выполнил студент
Русин Виктор Александрович
Ульяновск
2010 г.
Содержание
Введение
1. Теоретическая часть
1.1 Описание программы, матрицы
1.2 C++
1.3 Microsoft Visual Studio Express
1.4 Стандартная библиотека шаблонов (STL)
1.5 Vector
1.6 Перегрузка операторов
2. Проектирование и этапы разработки
2.1 Постановка задачи
2.2 Средства разработки
2.3 Описание процесса компиляции и запуска программы
3. Реализация
3.1 Структура программы
3.2 Структура класса
Заключение
Литература
Приложение. Исходный код программы. Заголовочные файлы
Введение
На сегодняшний день математическое программирование – важная составляющая всего программирования. Большие и сложные вычисления благодаря простым программам становятся простыми.
В данной курсовой работе создавалась программа для вычислений над матрицами.
В качестве среды программирования выбрана MS Visual Studio 2008 и язык программирования C++.
1. Теоретическая часть
1.1 Описание программы, матрицы
Ма́трица — математический объект, записываемый в виде прямоугольной таблицы чисел (или элементов кольца) и допускающий алгебраические операции (сложение, вычитание, умножение) между ним и другими подобными объектами. Обычно матрицы представляются двумерными (прямоугольными) таблицами. Иногда рассматривают многомерные матрицы или матрицы непрямоугольной формы.
Операции над матрицами
Пусть aij — элементы матрицы A, а bij — элементы матрицы B.
Линейные операции:
Умножение матрицы A на число λ (обозначение: λA) заключается в построении матрицы B, элементы которой получены путём умножения каждого элемента матрицы A на это число, то есть каждый элемент матрицы B равен
bij = λaij
Сложение матриц A + B есть операция нахождения матрицы C, все элементы которой равны попарной сумме всех соответствующих элементов матриц A и B, то есть каждый элемент матрицы C равен
cij = aij + bij
Вычитание матриц A − B определяется аналогично сложению, это операция нахождения матрицы C, элементы которой
cij = aij - bij
Сложение и вычитание допускается только для матриц одинакового размера.
Существует нулевая матрица Θ такая, что её прибавление к другой матрице A не изменяет A, то есть
A + Θ = A
Все элементы нулевой матрицы равны нулю.
Умножение матриц (обозначение: AB, реже со знаком умножения ) — есть операция вычисления матрицы C, элементы которой равны сумме произведений элементов в соответствующей строке первого множителя и столбце второго.
В первом множителе должно быть столько же столбцов, сколько строк во втором. Если матрица A имеет размерность , B — , то размерность их произведения AB = C есть .
Возводить в степень можно только квадратные матрицы.
Транспонирование матрицы (обозначение: AT) — операция, при которой матрица отражается относительно главной диагонали, то есть
Если A — матрица размера , то AT — матрица размера .
1.2 C++
C++ (Си++) — компилируемый статически типизированный язык программирования общего назначения. ............