Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Программы для расчета матриц
Сегодня существует большой выбор приложений для расчета матриц – это онлайн калькулятор и установочные программы. Онлайновые матричные калькуляторы Достоинства: - Большой функционал; - Позволяет производить операции с размерностями до 7х7; - Имеется подробный ход решения примера; - Инструкция; - Теория; Недостатки: - Необходим веб-браузер и доступ в интернет; Программные матричные калькуляторы Достоинства: - Простой интерфейс; - Позволяет сохранять промежуточные результаты; Недостатки: - Не всегда позволяет производить операции с большой размерностью; - Не всегда имеет ход решения; Цель работы Разработать программу для проведения основных операций над матрицами размерности 2х2 и 3х3: - Сложение и вычитание; - Умножение и деление; - Нахождение определителя; - Обратная матрица; Главное отличие этого матричного калькулятора это то, что она будет разработана для студентов СФЮК (Сочинский финансово-юридический колледж), которые в основном проводят операции с матрицами 2х2 и 3х3. Вывод В данной главе было рассмотрено: 1. Что собой представляет матрица. 2. Какую роль она играет в математике и в других сферах. 3. Какие наработки уже имеются. 4. С помощью матриц, что будет разработано. ГЛАВА 2. ИДЕЯ РЕШЕНИЯ ЗАДАЧИ Способы решения Имеется несколько способов решения – это (PHP, Delphi, C++, C#), которые будут рассмотрены в данной работы. PHP - Personal Home Page PHP — это скриптовый язык общего назначения для разработки серверных частей веб-приложений. Программы, написанные на PHP, исполняются на сервере. Сам движок компилирует текст программы в байт-код, который затем исполняется. Обычно генерация байт-кода происходит каждый раз при запуске скрипта. Современный движок PHP состоит из двух частей: транслятора в байт-код и интерпретатора байт-кода. Результатом работы скрипта является некий HTML-код, который передается веб-серверу (имеется в виду серверная программа, например Apache) и отправляется в браузер клиента в качестве ответа от этого самого сервера. Достоинства: - Самая высокая скорость работы скриптов, по сравнению с другими методами; - Простота работы, сервер сам обрабатывает скрипты; - Общий конфигурационный файл для всех скриптов (php.ini); - Возможность задания переменных конфигурации PHP в конфигурационном файле веб-сервера или средствами файла.htaccess; Недостатки: - Все скрипты запускаются с правами, с которыми работает web-сервер, тем самым, если есть необходимость записи в какую либо директорию права доступа необходимо дать на нее всем; - В случае запуска сторонних приложений скриптами (например, почтовая рассылка), нет возможности идентифицировать пользователя, который запустил процесс; - Излишняя нагрузка на web-сервер, Apache занятый обработкой скриптов может медленно отдавать другие статические данные; - Ошибки в скриптах могут привести к неработоспособности всего web-сервера; Delphi Delphi — императивный, структурированный, объектно-ориентированный язык программирования со строгой статической типизацией переменных. Основная область использования — написание прикладного программного обеспечения. Первоначально носил название Object Pascal и исторически восходит к одноимённому диалекту языка, разработанному в фирме Apple в 1986 году группой Ларри Теслера. Однако в настоящее время термин Object Pascal чаще всего употребляется в значении языка среды программирования Delphi. Начиная с Delphi 7, в официальных документах Borland стала использовать название Delphi для обозначения языка Object Pascal. Достоинства: - Удобная среда разработки, включающая функциональный отладчик, доступный в любой момент; - Контекстная справочная система, по которой можно изучать язык без обращения к сторонним источникам; - Высокая скорость компиляции, высокая скорость выполнения откомпилированных программ; - Встроенная возможность использовать вставки на языке ассемблера; Недостатки: - Больший размер результирующих exe-файлов по сравнению с другими системами разработки; - Некоторая сложность при использовании Windows API, связанная с необходимостью преобразования между типами данных языков C и Pascal (особенно при использовании строк и указателей); 2.1.3 C++ C++ — это компилируемый, статически типизированный язык программирования общего назначения. Поддерживает такие парадигмы программирования, как процедурное программирование, объектно-ориентированное программирование, обобщённое программирование, обеспечивает модульность, раздельную компиляцию, обработку исключений, абстракцию данных, объявление типов (классов) объектов, виртуальные функции. Стандартная библиотека включает, в том числе, общеупотребительные контейнеры и алгоритмы. C++ сочетает свойства как высокоуровневых, так и низкоуровневых языков. В сравнении с его предшественником — языком C, — наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования. C++ оказал огромное влияние на другие языки программирования, в первую очередь на Java и C#. Достоинства: - Высокая совместимость с языком Си; - Вычислительная производительность; - Автоматический вызов деструкторов объектов в адекватном порядке (обратном вызову конструкторов) упрощает и повышает надёжность управления памятью и другими ресурсами; Недостатки: - Плохо продуманный синтаксис сужает спектр применимости языка; - Язык не содержит многих важных возможностей; - Унаследованные от Си низкоуровневые свойства существенно тормозят и затрудняют прикладную разработку; 2.1.4 C# C# — объектно-ориентированный язык программирования. C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML. Достоинства: - Подлинная объектная ориентированность; - Компонентно-ориентированное программирование; - Безопасный (по сравнению с языками C и C++) код; - Унифицированная система типизации; - Поддержка событийно-ориентированного программирования; - Объединение лучших идей современных языков программирования (Java, C++, Visual Basic и другие); Недостатки: - На компьютере должна быть установлена среда выполнения программ Microsoft.NET Framework; - Требуется больше оперативной памяти; - Заметно снижается скорость работы программ;
C# как средство для решения задачи Из всех вариантов выбор был остановлен на языке C#, потому что – это гибкий язык, популярный на сегодняшний день, то есть язык будущего. У языка C# простой синтаксис и интерфейс, который будет понятен начинающим специалистам. Вывод В данной главе было рассмотрено: 1. Четыре варианта для разработки программного обеспечения. 2. Что собой эти языки представляют. 3. Их достоинства и недостатки. 4. С помощью какого языка будет осуществлена данная задача.
ГЛАВА 3. ЛОГИЧЕСКОЕ ПРОЕКТИРОВАНИЕ Программа состоит из 6 модулей – это сложение, вычитание, умножение, деление, определителя и обратной матрицы. Модуль сложения Сумма двух матриц производится только для одинаковых порядков, то есть для 2х2 и 3х3.
Рисунок 3.1 Модуль сложения Модуль вычитания Модуль вычитания идентичен модулю сложения.
Рисунок 3.2 Модуль вычитания Модуль умножения Произведение двух матриц производится правилом умножения строчки на столбик и выводится в матрицу ответ.
Рисунок 3.3 Модуль вычитания Модуль определителя Определитель находится методом треугольника для матрицы размерности 3х3, а чтобы вычислить определитель матрицы второго порядка, надо от произведения элементов главной диагонали отнять произведение элементов побочной диагонали.
Рисунок 3.4 Модуль определителя Модуль обратной матрицы Модуль обратной матрицы производится сначала нахождением определителя, а потом нахождением дополнительных миноров и алгебраических дополнений. После чего происходит транспонирование матрицы и умножение 1/определитель на транспонированную матрицу.
Рисунок 3.5 Модуль обратной матрицы Модуль деления Модуль деления производится умножением матрицы A на обратную матрицу В-1, то есть сначала находим обратную матрицу B-1, а потом производим умножение B-1 * A.
Рисунок 3.6 Модуль деления Вывод В данной главе было рассмотрено шесть основных модулей программы, их описание и блок-схемы.
|
Последнее изменение этой страницы: 2017-04-12; Просмотров: 1644; Нарушение авторского права страницы