Государственное образовательное учреждение
высшего профессионального образования
Ульяновский Государственный Университет
Факультет Математики и Информационных технологий
Кафедра информационных технологий
КУРСОВАЯ РАБОТА
Программирование действий над матрицами на языке С++.
Прикладная информатика 08.08.01
Проект выполнил студент
Русин Виктор Александрович
Ульяновск
2010 г.
Содержание
Введение
1. Теоретическая часть
1.1 Описание программы, матрицы
1.2 C++
1.3 MicrosoftVisualStudioExpress
1.4 Стандартная библиотека шаблонов (STL)
1.5 Vector
1.6 Перегрузка операторов
2. Проектирование и этапы разработки
2.1 Постановка задачи
2.2 Средства разработки
2.3 Описание процесса компиляции и запуска программы
3. Реализация
3.1 Структура программы
3.2 Структура класса
Заключение
Литература
Приложение. Исходный код программы. Заголовочные файлы
Введение
На сегодняшний день математическое программирование – важная составляющая всего программирования. Большие и сложные вычисления благодаря простым программам становятся простыми.
В данной курсовой работе создавалась программа для вычислений над матрицами.
В качестве среды программирования выбрана MSVisualStudio 2008 и язык программирования C++.
Ма́трица — математический объект, записываемый в виде прямоугольной таблицы чисел (или элементов кольца) и допускающий алгебраические операции (сложение, вычитание, умножение) между ним и другими подобными объектами. Обычно матрицы представляются двумерными (прямоугольными) таблицами. Иногда рассматривают многомерные матрицы или матрицы непрямоугольной формы.
Пусть 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 — матрица размера .
C++ (Си++) — компилируемый статически типизированный язык программирования общего назначения. Поддерживает разные парадигмы программирования, но, в сравнении с его предшественником — языком Си, — наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования.
Название «C++» происходит от Си (C), в котором унарный оператор ++ обозначает инкремент переменной.
В 1990-х годах язык стал одним из наиболее широко применяемых языков программирования общего назначения.
При создании C++ стремились сохранить совместимость с языком Си. Большинство программ на Си будут исправно работать и с компилятором C++. C++ имеет синтаксис, основанный на синтаксисе Си.
MicrosoftVisualStudioExpress — линейка бесплатных интегрированных сред разработки, облегчённая версия MicrosoftVisualStudio, разработанной компанией Microsoft. Согласно утверждению Microsoft, «Express»-редакции предлагают отлаженную, простую в обучении и использовании среду разработки пользователям, не являющимся профессиональными разработчиками ПО, — любителям и студентам. Последняя версия была выпущена 19 ноября 2007, пакет обновления SP1 — 11 августа 2008. С апреля 2009 года Microsoft прекратила поддержку всех предыдущих версий VisualStudioExpress. В апреле 2010 выпущена VisualStudio 2010 Express
1.4 Стандартная библиотека шаблонов (STL)
STL (англ. StandardTemplateLibrary) — набор согласованных обобщённых алгоритмов, контейнеров, средств доступа к их содержимому и различных вспомогательных функций.
Стандартная библиотека шаблонов до включения в стандарт C++ была сторонней разработкой, в начале — фирмы HP, а зат
Наверняка у вас есть товары или услуги, продажа которых приносит вам максимальную прибыль. Для быстрого старта в сети вам необходимо создание посадочной страницы (одностраничного сайта), на которой будет размещена информация о маржинальных товарах/услугах интернет магазина. За 8 лет опыта разработки конверсионных страниц мы выработали оптимальную структуру, которая позволит привлекать через landing page больше продаж. На такую структуру «одевается» ваш контент — фирменный стиль, тексты, фотографии, уникальные торговые предложения, после чего страница выходит в свет. Разработка лендинга и запуск в сети — до 7 рабочих дней. Стоит отметить, что в разработку самой посадочной страницы входит и написание копирайтером продающих текстов для вашего бизнеса, чтобы каждый посетитель страницы захотел совершить покупку именно у вас. Результат: качественно разработаная продающая посадочная страница, которая готова приносить вам новых клиентов.