Государственное образовательное учреждение
высшего профессионального образования
Ульяновский Государственный Университет
Факультет Математики и Информационных технологий
Кафедра информационных технологий
КУРСОВАЯ РАБОТА
Программирование действий над матрицами на языке С++.
Прикладная информатика 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++.
Ма́трица — математический объект, записываемый в виде прямоугольной таблицы чисел (или элементов кольца) и допускающий алгебраические операции (сложение, вычитание, умножение) между ним и другими подобными объектами. Обычно матрицы представляются двумерными (прямоугольными) таблицами. Иногда рассматривают многомерные матрицы или матрицы непрямоугольной формы.
Операции над матрицамиПусть 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++ (Си++) — компилируемый статически типизированный язык программирования общего назначения. Поддерживает разные парадигмы программирования, но, в сравнении с его предшественником — языком Си, — наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования.
Название «C++» происходит от Си (C), в котором унарный оператор ++ обозначает инкремент переменной.
В 1990-х годах язык стал одним из наиболее широко применяемых языков программирования общего назначения.
При создании C++ стремились сохранить совместимость с языком Си. Большинство программ на Си будут исправно работать и с компилятором C++. C++ имеет синтаксис, основанный на синтаксисе Си.
1.3 Microsoft Visual Studio ExpressMicrosoft Visual Studio Express — линейка бесплатных интегрированных сред разработки, облегчённая версия Microsoft Visual Studio, разработанной компанией Microsoft. Согласно утверждению Microsoft, «Express»-редакции предлагают отлаженную, простую в обучении и использовании среду разработки пользователям, не являющимся профессиональными разработчиками ПО, — любителям и студентам. Последняя версия была выпущена 19 ноября 2007, пакет обновления SP1 — 11 августа 2008. С апреля 2009 года Microsoft прекратила поддержку всех предыдущих версий Visual Studio Express. В апреле 2010 выпущена Visual Studio 2010 Express
... 2.0Ghz. Оперативная память не менее 512 Мбайт, достаточное количество свободного места на диске – порядка 1 Гбайт. 2. Разработка рабочего проекта 2.1 Разработка программы Проект программы содержит три окна: 1. Form1 – главное окно (выполнение операции над матрицами). 2. Form2 – справка о разработчике. Окно Form1. Главное окно программы – Form1 Ниже приведены описание ...
... волна распространяется по матрице по мере того, как обрабатываются входные данные, и затем результаты этой обработки передаются другим процессорам в матрице. АВТОМАТИЗАЦИЯ ПРОЕКТИРОВАНИЯ ЦИФРОВЫХ СБИС НА БАЗЕ МАТРИЦ ВАЙНБЕРГЕРА И ТРАНЗИСТОРНЫХ МАТРИЦВведение. Все большую долю в общем объеме ИС составляют заказные цифровые ИС, выполненные в основном, по МОП-технологии. Сокращение сроков ...
... работе в графическом режиме предназначается для обучения студентов младших курсов Санкт-Петербургской государственной Академии аэрокосмического приборостроения навыкам программирования, а именно работе в графическом режиме языка Turbo-Pascal . Для работы с настоящей программой необходимо знание стандарта языка, интегрированной среды и элементарным навыкам работы с персональным компьютером . ...
... . Объясните, для чего служат разрешения и привилегии в Windows NT. Зав. кафедрой -------------------------------------------------- Экзаменационный билет по предмету СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ Билет № 22 Перечислите возможности и инструменты системы программирования Microsoft Developer Studio. Укажите для чего предназначается буфер в системах ввода-вывода, ...
0 комментариев