Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Программы для расчета матриц



Сегодня существует большой выбор приложений для расчета матриц – это онлайн калькулятор и установочные программы.

Онлайновые матричные калькуляторы

Достоинства:

- Большой функционал;

- Позволяет производить операции с размерностями до 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.

Начало
A и B
А+В=Х
Ответ: Х
Конец

Рисунок 3.1 Модуль сложения

Модуль вычитания

Модуль вычитания идентичен модулю сложения.

Начало
A и B
А-В=Х
Ответ: Х
Конец

Рисунок 3.2 Модуль вычитания

Модуль умножения

Произведение двух матриц производится правилом умножения строчки на столбик и выводится в матрицу ответ.

Начало
A и B  
А*В=Х
Ответ: Х
Конец

Рисунок 3.3 Модуль вычитания

Модуль определителя

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

Начало
А
Ответ: Х
Конец

Рисунок 3.4 Модуль определителя

Модуль обратной матрицы

Модуль обратной матрицы производится сначала нахождением определителя, а потом нахождением дополнительных миноров и алгебраических дополнений. После чего происходит транспонирование матрицы и умножение 1/определитель на транспонированную матрицу.

Начало
А
Ответ: A-1
Конец
если ∆ =0
ДА
*A*T
A*T
НЕТ

Рисунок 3.5 Модуль обратной матрицы

Модуль деления

Модуль деления производится умножением матрицы A на обратную матрицу В-1, то есть сначала находим обратную матрицу B-1, а потом производим умножение B-1 * A.

Начало
A и B
Ответ: X
Конец
если ∆ =0
ДА
*B*T
B*T
НЕТ
А/В=X
A*B-1

Рисунок 3.6 Модуль деления

Вывод

В данной главе было рассмотрено шесть основных модулей программы, их описание и блок-схемы.


 


Поделиться:



Последнее изменение этой страницы: 2017-04-12; Просмотров: 1644; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.023 с.)
Главная | Случайная страница | Обратная связь