«КАЛЬКУЛЯТОР МАТРИЦ» Курсовая работа по дисциплине «Объектно– ориентированные инструментальные средства » Выполнили: студенты группы ДИУ-21/2 Косарев Валентин.

Презентация:



Advertisements
Похожие презентации
Выполнил: Гусев Данил. Что такое программное обеспечение? Возможности современного ПК столь велики, что все большее число людей находят ему применение.
Advertisements

Тема 5. Основы современной технологии программирования Программирование в средах современных информационных систем. Интегрированные системы разработки.
Хочу быть программистом! С чего бы начать? Turbo Pascal.
Основы объектно-ориентированного программирования (ООП)
БЭСТ Дизайнер проектов Введение Концепции Основные понятия.
Объектно-ориентированный язык программирования. Переменная - эта поименованная ячейка памяти, хранящая какое-либо одно значение (одно число, один фрагмент.
«Обработка массивов данных» Delphi. Тема 4:4: «Обработка массивов данных» План темы: l1l1. Понятие массива данных. l2l2. Описание массива в программе.
Понятие базы данных, их виды, применение. Системы управления базами данных (СУБД)
Объектно-ориентированное программирование Основы языка программирования Lazarus.
Краткий курс лекций по математике Для студентов 1 курса экономического факультета Шапошникова Е.В. к.ф.-м.н., доцент.
Основные понятия программирования. АЛГОРИТМЫ + ДАННЫЕ = ПРОГРАММЫ Н. Вирт.
ОБЪЕКТНО- ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ (ООП) 1.
Программное обеспечение компьютера. Совокупность программ, хранящихся в долговременной памяти компьютера, составляют программное обеспечение (ПО) компьютера.
Базы данных – это совокупность сведений (о реальных объектах, процессах, событиях или явлениях), относящихся к определенной теме или задаче, организованная.
МАССИВЫ 4 Определение 4 Описание 4 Обращение к элементам массива 4 Связь массивов с указателями 4 Примеры программ.
Система программ «1 С: ПРЕДПРИЯТИЕ» Структура Элементы Средства.
Лекция 6. Способы адресации в микропроцессорных системах.
OOП Инна Исаева. Подпрограмма – это большая программа, разделённая на меньшие части. В программе одна из подпрограмм является главной. Её задача состоит.
Тема 5. Введение в среду визуального программирования Borland Delphi 7.0.
Алгоритм Мухаммед аль - Хорезми (IX век н.э.). Описание алгоритма Алгоритм – совокупность четко определенных правил для решения задачи за конечное число.
Транксрипт:

«КАЛЬКУЛЯТОР МАТРИЦ» Курсовая работа по дисциплине «Объектно– ориентированные инструментальные средства » Выполнили: студенты группы ДИУ-21/2 Косарев Валентин Конищев Александр Руководители: Бокова А.В. Буйлов К.В.АГТУ

ВВЕДЕНИЕ Для многих операций в офисах, лабораториях и прочих рабочих местах, связанных с какими-либо расчетами, требуются какие- то вычисления с нестандартными типами данных. Целью данного курсового проекта является создание именно такой программы, которая могла бы выполнять основные операции над матрицами. Предполагаемый проект должен обладать рядом качеств, которые бы выделили его среди остальных программ с той же функцией. Во-первых, функциональность, то есть программа должна включать основной и дополнительный набор операций с матрицами. Во-вторых, простота интерфейса, рассчитанного практически на любого пользователя, имеющего хотя бы первоначальное понятие о матрицах. В-третьих удобство в использовании программы. Основное назначение данного курсового проекта – увеличение показателя производительности работников, чья работа связана с вычислениями каких-то величин размерностью матриц, из-за использования нового программного продукта на производстве.

ГЛАВА I

Теоретические основы ООП Сегодня ни одна программа не представляется без наличия в ней объектов. Объектно-ориентированное программирование вышло на новую ступень своего развития, когда внедрить объект в программу не составляет большого труда, а порой, это за вас сделает визуальная среда. Можно сказать, что объектно-ориентированное программирование стоит на трёх китах, таких как инкапсуляция, полиморфизм и наследование.

ГЛАВА II

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

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

2.2. Технология обработки информации Любая матрица представляется в виде двухмерного массива целых десятичных чисел типа int. Кроме того, каждой таблице соответствует еще 2 положительных целых числа типа unsigned char хранящие размеры матрицы.

Функциональные требования В программе должны быть реализованы: o Представление матрицы в формате, описанном выше. Для этого должен использоваться отдельный класс – класс матриц. o Операции изменения размеров матриц. o Операции преобразования матриц (транспонирование). o Операции инициализации матриц (инициализация единичной, нулевой, случайной, одночисельнной матрицы). o Операции сложения, и умножения матриц. o Операции умножения матрицы на скаляр и возведение в скалярную степень. o Удобная память калькулятора (буфер).

Требования к интерфейсу Интерфейс должен обеспечивать пользователю возможность: 1) удобного ввода данных с клавиатуры; 2) изменять размер вычисляемых матриц и контролировать текущие размеры рабочих матриц и результирующей; 3) Производить все операции, перечисленные в «Функциональных требованиях» интуитивно понятным и удобным способом; 4) Визуально контролировать содержимое буферной памяти калькулятора; Не допускать обработки исходных данных, противоречащих логике работы программы путем вывода сообщений об ошибке;

Внешний вид интерфейса

ГЛАВА III

Общие сведения Borland C++ Builder – это среда быстрой разработки, в которой в качестве языка программирования используется язык C++ Builder (C++ Builder Language). Можно сказать, что язык C++ Builder – это расширенный С++. Например, в С++ Builder есть строковый (AnsiString) и логический (Bool) типы, которых нет в классическом С++. К тому же несомненным преимуществом языка C++ Builder является встроенная RAD (rapid application development) которая обеспечивает быструю разработку приложений. Borland C++ Builder может работать в среде операционных систем от Windows 95 до Windows XP. Особых требований по современным меркам, к ресурсам компьютера пакет не предъявляет: процессор должен быть типа Pentium или Celeron (рекомендуется Pentium || 400 МГц), объем оперативной памяти должен составлять не менее 128 Мбайт (рекомендуется 256 Mбайт) и свободное дисковое пространство должно быть достаточным.

3.1. Укрупненный алгоритм Классы В данной программе реализованы 4 класса: class TMatrix {...} класс матриц; class TForm1 : public TForm {...} главная форма class TAboutBox1 : public TForm {...} форма окна About; class TErrorBox1 : public TForm {...} форма окна ошибок;

Модули Исходный текст программы размещается в четырех модулях (восьми файлах) и двух дополнительных файлах: 1) Unit1. h используется для хранения класса TForm1; 2) Unit2. h используется для хранения класса TMatrix; 3) Unit3. h используется для хранения класса TAboutBox; 4) Unit4. h используется для хранения класса TErrorBox; 5) Unit1. cpp используется для хранения методов класса TForm1 с формой доступа published; 6) File1. cpp используется для хранения методов класса TForm1 с формой доступа public(описанные программистом); 7) Unit2. cpp используется для хранения методов класса TMatrix; 8) Unit3. cpp используется для хранения методов класса TAboutBox; 9) Unit4. cpp используется для хранения методов класса TErrorBox; 10) File2. h используется для хранения глобальных констант;

Схема алгоритма Любая функция нажатия функциональной кнопки главного окна использует одну из функций чтения формы и/или одну из функций вывода в форму описанных в файле File1. cpp Сначала происходит чтение одной или двух таблиц строк StringGrid с занесением значений из них в соответствующие матрицы. Затем с помощью методов класса TMatrix данные обрабатываются и выводятся по необходимости в результирующую или одну из рабочих StringGrid. Рассмотрим на примере функции нажатия кнопки сложения. 1) Чтение обеих StringGrid с помощью метода ReadForm() с занесением результата в _Mat1 и _Mat2. 2) Присвоение матрице _Res значения суммы матриц _Mat1 и _Mat2 с помощью метода класса TMatrix MSumm(TMatrix, TMatrix). 3) Вывод матрицы _Res в форму с помощью функции WriteForm().

Обработка исключений В программе генерируются исключения с кодом целого типа. Все они делятся на 6 групп: Код 1:Несоответствующий выбранной операции размер матрицы (матрица должна быть квадратной). Код 2:Несоответствующие выбранной операции размеры матриц (матрицы должны иметь одинаковый размер). Код 3:Недопустимые данные (элементами матриц могут быть только числа). Код 4:Недопустимые данные (независимое поле Edit должно содержать только числа). Код 5:Несоответствующие выбранной операции размеры матриц (высота первой матрицы должна соответствовать ширине второй). Код 10:Внутренняя ошибка класса TMatrix (неправильные индексы).От пользователя не зависит. При поимке любого исключения вызывается функция ExceptCatch(int ErrorCode), которая выводит соответствующее сообщение об ошибке в форму TErrorBox1 и показывает саму форму.