Рассчитай точную стоимость своей работы и получи промокод на скидку 500 ₽
Найди эксперта для помощи в учебе
Найти эксперта
+2
Пример заказа на Автор24
Студенческая работа на тему:
Программное приложение. Анализ справочных данных для гидравлического расчета систем водоснабжения.
Создан заказ №3389246
28 ноября 2018

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

Как заказчик описал требования к работе:
Оглавление Введение​2 Описание алгоритма​3 Структура приложения​5 Руководство пользователя​10 Заключение​18 Библиографический список​19 Введение Матрицы находят широкое применение в программировании, однако иногда случаются ситуации, когда при ее хранении память в основном занимают нулевые элементы . Такие матрицы называются разреженными.Разреженная матрица – это матрица, которая содержит преимущественно нулевые элементы. В результате данной ситуации возникает проблема хранения таких матриц, ведь под хранения нулевых элементов отводится огромный объем памяти, что нецелесообразно. У этой проблемы есть решение – различные алгоритмы упаковки, которые позволяют избавиться от хранения нулей, путем хранения в памяти компьютера только ненулевых элементов разреженной матрицы. В данной курсовой работе был рассмотрен один из таких алгоритмов. Цель курсовой работы заключается в разработке приложения, реализующего алгоритм упаковки матрицы (Тьюарсон 1 схема). Данный алгоритм позволяет уменьшить затраты памяти при хранении разреженных матриц. Алгоритм преобразует матрицу в массив, который хранит номера столбцов, строк и сами ненулевые элементы. Описание алгоритма Каждому ненулевому элементу матрицы соответствует запись, занимающая две ячейки памяти. Первая ячейка содержит номер строки, вторая – значение элемента. Нуль в первой ячейке означает конец данного столбца. Вторая ячейка в этом случае содержит номер следующего столбца. Нули в обеих ячейках указывают на конец массива, хранящего матрицу. Таким образом, общее число записей будет равно n+t+1, из них n – для столбцов, t – для ненулевых элементов матрицы A и одна запись – для указания конца матрицы. Так как каждая запись использует две ячейки матрицы. Так как каждая запись использует две ячейки памяти, то для хранения матрицы A потребуется 2(n+t+1) ячеек. Рассмотрим упаковку матрицы A размерностью 3х3 Количество записей упакованной матрицы должно быть n + t + 1 = 7, где n = 3, t = 3. Матрица начинается с пары 0,1, т.к. начинаем упаковку с первого столбца (0,1) из ненулевых элементов в первом столбце только 3 в строке 1, следовательно, следующей записью будет (0,1;1,3) Так как в первом столбце ненулевых элементов больше нет, то переходим ко второму столбцу, добавляем соответствующую запись, обозначающую переход ко второму столбцу (0,1;1,3;0,2) Во втором столбце единственным ненулевым элементом является 2 в строке 3, добавляем (0,1;1,3;0,2;3,2) Так как во втором столбце ненулевых элементов больше нет, то переходим к третьему столбцу, добавляем соответствующую запись, обозначающую переход к третьему столбцу (0,1;1,3;0,2;3,2;0,3) В третьем столбце единственным ненулевым элементом является 1 в строке 2, добавляем (0,1;1,3;0,2;3,2;0,3;2,1) В третьем столбце ненулевых элементов больше нет. Матрица закончилась, т.к. столбцов всего 3. Необходимо обозначить окончание массива – добавим (0,0). (0,1;1,3;0,2;3,2;0,3;2,1;0,0) Структура приложения Приложение написано на VBA в MSExcel. Состоит из четырех листов: 1. Ввод данных Лист “Ввод данных” (рис.1) содержит в себе все кнопки для управления приложением. Рис.1 Лист “Ввод данных” Кнопка “Очистить листы” (макрос btn_Clear) – очищает все листы, кроме листа “Ввод данных”. Кнопка “Создать матрицу” (макрос btn_Create) – создает разметку для матрицы на листе “Матрица”, в соответствии с введенным количеством строк и столбцов (обязательно должны быть введены в поля). Кнопка “Заполнение матрицы” (макрос btn_Manual) – служит для перехода на лист “Матрица” для ввода ненулевых элементов матрицы. Кнопка “Заполнить оставшееся нулям” (макрос btn_Fill) – служит для заполнения в матрице (лист “Матрица”) пустых клеток нулями. Кнопка “Упаковать матрицу” (макрос btn_Packing) – служит для упаковки матрицы по алгоритму Тьюарсона (схема 1) . Упакованная матрица выводится на лист “Упакованная матрица”. Кнопка “Распаковать матрицу” (макрос btn_Unpacking) – служит для распаковки упакованной матрицы с листа “Упакованная матрица”. Распакованная матрица будет отображена на листе “Распакованная матрица”. Кнопка “Сохранить матрицу” (макрос btn_Save) – служит для сохранения двух листов (“Матрица”, “Упакованная матрица”) в отдельный файл, имя и путь сохранения задает пользователь. Кнопка “Загрузить матрицу” (макрос btn_Load) – служит для загрузки матрицы из внешнего файла. Однако файл должен соответствовать требованиям (листы должны иметь названия “Матрица”, “Упакованная матрица”). Кнопка “Добавить ненулевой элемент” (макрос btn_Add) – служит для добавления элемента в упакованную матрицу на листе “Упакованная матрица”. Кнопка “Удалить ненулевой элемент” (макрос btn_Delete) –служит для удаления элемента из упакованной матрицы на листе “Упакованная матрица”. Кнопка “Найти элемент” (макрос btn_Find) – служит для поиска элемента по введенным строке и столбцу. Вывод в графу “Элемент” на листе “Ввод данных”. 2. Матрица На листе «Матрица» (рис.2) хранится матрица, которую необходимо упаковать. Рис.2 Лист “Матрица” 3. Упакованная матрица На листе «Упакованная матрица» (рис.3) хранится упакованная матрица. Рис.3 Лист “Упакованная матрица” 4. Распакованная матрица На листе «Распакованная матрица» (рис.4) хранится распакованная матрица. Рис.4 Лист “Распакованная матрица” Руководство пользователя Для начала работы с приложением необходимо ввести количество строк и столбцов в соответствующие поля на листе “Ввод данных” (рис. 5). В данные поля можно вводить только целые числа больше 1, в противном случае появится сообщение об ошибке (рис. 6). Рис.5 Правильно заполненные поля для ввода количества строк и столбцов Рис.6 Сообщение об ошибке при вводе количества строк и столбцов Затем необходимо нажать кнопку создать матрицу (рис. 7). Следует учесть, что если количество строк и столбцов не будет указано (либо будет указано неверно), то будет выдана ошибка (рис. 8). Рис. 7 Кнопка “Создать матрицу” Рис. 8 Сообщение об ошибке при создании матрицы После успешного создания матрицы, следует нажать кнопку “Заполнение матрицы” (рис. 9). Рис. 9 Кнопка “Заполнение матрицы” Программа перейдет на лист “Матрица”, где указываются все ненулевые элементы матрицы (рис. 10).Элементы могут быть только числовыми. Рис. 10 Лист “Матрица” с правильно заполненными данными После того, как данные введены, следует перейти обратно на лист “Ввод данных” и нажать на кнопку “Заполнить оставшееся нулями” (рис. 11). Программа автоматически обнулит свободные ячейки. Рис. 11 Кнопка “Заполнить оставшееся нулями” Следующий шаг – нажать на кнопку “Упаковать матрицу” (рис. 12). В случае, если появилось сообщение об ошибке (рис. 13), это значит, что в матрице присутствуют не только числовые элементы. Рис. 12 Кнопка “Упаковать матрицу” Рис. 13 Сообщение об ошибке при неправильном заполнении матрицы После успешного выполнения упаковки, осуществляется автоматический переход на лист “Упакованная матрица”, где отображена упакованная матрица (рис. 14). Рис. 14 Лист “Упакованная матрица” с результатом упаковки В случае необходимости, матрицу и ее упакованную форму можно сохранить в отдельный файл. Для этого нужно перейти на лист “Ввод данных”, нажать на кнопку “Сохранить матрицу” (рис. 15) и выбрать имя файла и путь для сохранения (рис. 16). Рис. 15 Кнопка “Сохранить матрицу” Рис. 16 Диалоговое окно сохранения файла В случае необходимости данный файл можно будет загрузить, и на листах “Матрица”, “Упакованная матрица” отобразятся сохраненные матрица и ее упакованная форма. Для демонстрации открытия файла, для начала очистим листы путем нажатия кнопки “Очистить листы” (рис. 17). После очистки листов, все листы, кроме листа “Ввод данных” будут пустыми. Рис. 17 Кнопка “Очистить листы” Для открытия файла следует нажать кнопку “Загрузить матрицу” (рис. 18) и в диалоговом окне выбрать файл (рис. 19). Рис. 18 Кнопка “Загрузить матрицу” Рис. 19 Диалоговое окно открытия файла После открытия файла, лист “Упакованная матрица” станет активным – файл открыт. В приложении также предусмотрена работа с упакованной матрицей. Для того, чтобы добавить новый элемент необходимо в поля (рис. 20) ввести номер строки и столбца (в случае если оставить поля пустыми, то по нажатию на кнопку “Добавить ненулевой элемент” будет выдана ошибка (рис. 21)), а также новый элемент, который должен быть ненулевым, иначе появится сообщение об ошибке (рис. 22) и нажать кнопку “Добавить ненулевой элемент” (рис. 23). Рис. 20 Правильно заполненные поля для добавления элемента Рис. 21 Сообщение об ошибке, если не введены строка или столбец Рис. 22 Сообщение об ошибке, при попытке добавить нулевой элемент Рис. 23 Кнопка “Добавить ненулевой элемент” Для удаления ненулевого элемента необходимо заполнить только номер и строку в поле ввода (рис. 24). Если строка или столбец не будут введены, то по нажатию кнопку “Удалить ненулевой элемент” (рис. 25) будет выдана ошибка (рис. 21). Рис. 24 Правильно заполненные поля для удаления элемента Рис. 25 Кнопка “Удалить ненулевой элемент” Для поиска элемента в матрице необходимо заполнить поля (рис. 26). Нажать кнопку “Найти элемент” (рис. 27). Рис. 26 Правильно заполненные поля для поиска элемента Рис. 27 Кнопка “Найти элемент” В случае, если элемент ненулевой, тогда после нажатия на кнопку “Найти элемент” станет активна ячейка, в которой находится искомый элемент (рис. 28), а на листе “Ввод данных” в графе “Элемент” отобразится найденный элемент (рис. 29). Рис. 28 Результат поиска на листе “Упакованная матрица” Рис. 29 Результат поиска на листе “Ввод данных” Если же найденный элемент окажется нулевым, тогда будет выдано сообщение (рис. 30), а на листе “Ввод данных” в графе “Элемент” отобразится 0 (рис. 31). Рис. 30 Сообщение о нахождении нулевого элемента Рис. 31 Результат поиска на листе “Ввод данных” (нулевой элемент) После внесенных изменений, чтобы получить новую матрицу из упакованной необходимо нажать кнопку “Распаковать матрицу” (рис. 32), после нажатия станет активным лист “Распакованная матрица”. Рис. 32 Кнопка “Распаковать матрицу” К примеру, после удаления элемента из 1й строки и 1го столбца, а также добавления элемента 4 в строку 1, столбец 2, результат будет выглядеть следующим образом (исходная матрица – рис. 33) (рис. 34). Рис. 33 Исходная матрица Рис. 34 Результат изменений Заключение В результате выполнения курсовой работы было разработано приложение на языке VBA, реализующее хранение разреженных матриц по алгоритму Тьюарсона (схема 1). Данный алгоритм позволяет избавиться от хранения в памяти компьютера нулевых элементов, тем самым уменьшая, необходимый для хранения матрицы, объем памяти. Приложение позволяет изменять упакованную форму матрицы, а также сохранять результаты текущей работы программы и загружать предыдущие результаты работы программы. Помимо этого приложение позволяет осуществить поиск необходимого элемента в упакованной форме. Библиографический список 1. Тьюарсон Р. Разреженные матрицы – М.: Мир, 1977. – 191 с. 2. Писсанецки С. Технология разреженных матриц – М.: Мир, 1988. – 410 с. 3. Зиборов В.В. VisualBasic 2010 на примерах – М.: БХВ-Петербург, 2010. – 338 с. 4. Джон Уокенбах. Excel 2013. Профессиональное программирование на VBA – М.: Вильямс, 2017. – 960 с. 5. Садовский Б.С. Технология программирования, 2009. – 98 с. 3
подробнее
Заказчик
заплатил
500 ₽
Заказчик не использовал рассрочку
Гарантия сервиса
Автор24
20 дней
Заказчик принял работу без использования гарантии
1 декабря 2018
Заказ завершен, заказчик получил финальный файл с работой
5
Заказ выполнил
authorAlexander
5
скачать
Программное приложение. Анализ справочных данных для гидравлического расчета систем водоснабжения. .docx
2018-12-04 20:33
Последний отзыв студента о бирже Автор24
Общая оценка
4.1
Положительно
Заказ выполнен в срок. Получили оценку удовлетворительно. Комментарий преподавателя: " В работе не нужны были проектные решения - они не имеют отношения к регламенту. "

Хочешь такую же работу?

Оставляя свои контактные данные и нажимая «Создать задание», я соглашаюсь пройти процедуру регистрации на Платформе, принимаю условия Пользовательского соглашения и Политики конфиденциальности в целях заключения соглашения.
Хочешь написать работу самостоятельно?
Используй нейросеть
Мы создали собственный искусственный интеллект,
чтобы помочь тебе с учебой за пару минут 👇
Использовать нейросеть
Тебя также могут заинтересовать
Основные понятия систем реального времени (СРВ).
Реферат
Информационные технологии
Стоимость:
300 ₽
Разработка алгоритмов и программных средств для системы противопожарной безопасности
Дипломная работа
Информационные технологии
Стоимость:
4000 ₽
Планирование и организация электронного бизнеса
Другое
Информационные технологии
Стоимость:
300 ₽
ТЕХНОЛОГИЯ BLOCKCHAIN
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Атрибуты качества ПО
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Основные принципы работы компьютера
Реферат
Информационные технологии
Стоимость:
300 ₽
АИС "Аэропорт"
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Математическое моделирование и информационные технологии при проектировании
Контрольная работа
Информационные технологии
Стоимость:
300 ₽
История возникновения и развития языка программирования Си (С++) и Java
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Курсовая "Разработка туристического сайта"
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Оценка и сертификация электронных дидактических средств
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
информационные технологии в деятельности гостинично-ресторанных комплексов
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Интеллектуальные интернет технологии. Описание, назначение и их сравнительный анализ.
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Проектирование информационной системы.
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Сбор и представление технологической информации для энерготехнологического агрегата
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Курсовая работа по дисциплине Информационный Анализ Данных
Курсовая работа
Информационные технологии
Стоимость:
700 ₽
Читай полезные статьи в нашем
Разработка информационной системы
Разработка информационной системы (ИС) начинается с переговоров между заказчиком и исполнителем.
Основными этапами разработки информационной системы являются:
В уставе проекта определяются принципиальные моменты, которые связаны с процессом разработки и внедрения ИС:
На данном этапе проводится систематизация требований и пожеланий к разрабатываемой ИС, проводится анализ входной и выходной документаци...
подробнее
Информационные технологии дистанционного обучения
С появлением информационных технологий, позволяющих осуществлять обмен информацией на больших расстояниях, стало возможным осуществлять обучение без прямого контакта преподавателя и обучаемого.
Обучение, при котором обучающийся удален от преподавателя и образовательных ресурсов, а учебный процесс проводится с помощью компьютеров, телекоммуникационных и информационных технологий называется дистанцио...
подробнее
Информационное обеспечение
Развитие рыночных отношений вызывает необходимость повышения уровня управления экономикой. Процесс управления представляет собой сбор, обработку и передачу информации для вынесения управляющих решений.
Существует разделение экономической информации по функциональному ее назначению, в рамках которого выделяют такие структурные единицы:
Создание ИС и информационных технологий (ИТ) нуждается в специаль...
подробнее
Применение моделирования в медицине
Метод моделирования нашел свое применение и в медицине, а также в науках, которые тесно связаны с ней. Метод моделиpования в медицине – это сpедство, которое позволяет устанавливать все более глубокие и сложные взаимосвязи между теоpией и практикой. В последнее время стало очевидным, что целый ряд исследований в медицине становится невозможно выполнить экспеpиментальным путем, в то время как метод...
подробнее
Разработка информационной системы
Разработка информационной системы (ИС) начинается с переговоров между заказчиком и исполнителем.
Основными этапами разработки информационной системы являются:
В уставе проекта определяются принципиальные моменты, которые связаны с процессом разработки и внедрения ИС:
На данном этапе проводится систематизация требований и пожеланий к разрабатываемой ИС, проводится анализ входной и выходной документаци...
подробнее
Информационные технологии дистанционного обучения
С появлением информационных технологий, позволяющих осуществлять обмен информацией на больших расстояниях, стало возможным осуществлять обучение без прямого контакта преподавателя и обучаемого.
Обучение, при котором обучающийся удален от преподавателя и образовательных ресурсов, а учебный процесс проводится с помощью компьютеров, телекоммуникационных и информационных технологий называется дистанцио...
подробнее
Информационное обеспечение
Развитие рыночных отношений вызывает необходимость повышения уровня управления экономикой. Процесс управления представляет собой сбор, обработку и передачу информации для вынесения управляющих решений.
Существует разделение экономической информации по функциональному ее назначению, в рамках которого выделяют такие структурные единицы:
Создание ИС и информационных технологий (ИТ) нуждается в специаль...
подробнее
Применение моделирования в медицине
Метод моделирования нашел свое применение и в медицине, а также в науках, которые тесно связаны с ней. Метод моделиpования в медицине – это сpедство, которое позволяет устанавливать все более глубокие и сложные взаимосвязи между теоpией и практикой. В последнее время стало очевидным, что целый ряд исследований в медицине становится невозможно выполнить экспеpиментальным путем, в то время как метод...
подробнее
Теперь вам доступен полный отрывок из работы
Также на e-mail вы получите информацию о подробном расчете стоимости аналогичной работы