Создание дополнения для поддержки инженерных расчетов

Позиционирование и предназначение бюджетного калькулятора и калькулятора Windows. Определение математической модели приложения. Диаграмма классов. Проектирование бизнес логики. Описание программного продукта, его тестирование. Инструкция пользователя.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 06.06.2017
Размер файла 1,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Содержание

  • Перечень условных обозначений
  • Введение
  • 1. Анализ предметной области
    • 1.1 Обзор аналогов
      • 1.1.1 Бюджетный калькулятор
      • 1.1.2 Калькулятор Windows
    • 1.2 Подробный обзор аналогов
    • 1.2 Постановка задачи
  • 2. Математическая модель
    • 2.1 Определение математической модели
    • 2.2 Математическая модель приложения
  • 3. Проектирование программного обеспечения приложения
    • 3.1 Обзор существующих технологий
    • 3.2 Технология разработки приложения
    • 3.3 Логическая структура приложения
    • 3.4 Проектирование бизнес логики
    • 3.5 Выводы по разделу
  • 4. Тестирование работы приложения
    • 4.1 Инструкция пользователю
  • 5. Экономический раздел. расчет себестоимости и цены разработки дополнения для поддержки инженерных расчетов
    • 5.1 Описание программного продукта
    • 5.2 Расчет себестоимости и цены программного продукта
  • Выводы
  • Перечень ссылок
  • Приложение

Перечень условных обозначений

OS - Operating System;

WCF - Windows Communication Foundation;

WPF - Windows Presentation Foundation;

ПП - программный продукт;

Cos - косинус;

Sin - синус;

Tan -тангенс;

Введение

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

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

Цель и задачи исследования. Целью выпускной работы бакалавра является создание дополнения для поддержки инженерных расчетов.

Для достижения поставленной цели были решены следующие задачи:

- проанализирована предметная область;

- проведен обзорный анализ аналогов приложений;

- проанализирована литература, необходимая для создания приложения;

- спроектировано программное обеспечение приложения.

Объектом исследования являются математические функции и формулы расчета показателей прибыли.

Предметом исследования являются методы построения математических функций.

Научно-технический эффект состоит в формализации процедуры распределения функций и работ по исполнителям.

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

Расчет себестоимости и цены разработки программы для оперативного контроля посещаемости и успеваемости студентов факультета.[3]

Апробация результатов выпускной работы бакалавра. Промежуточные результаты выпускной работы бакалавра представлялись в Национальном аэрокосмическом университете им. Н. Е. Жуковского, факультет систем управления летательными аппаратами, кафедра 302 (Харьков, 2015).

калькулятор бизнес логика программный

1. Анализ предметной области

1.1 Обзор аналогов

1.1.1 Бюджетный калькулятор

Интерфейс выполнен просто и строго, нет ничего лишнего. Чтобы производить расчеты в данном калькуляторе достаточно заполнить нужные нам поля цифрами, после чего он сам выведет нам результат в поле ниже.

Минусы:

- устаревший интерфейс;

- указываемая цена только в рублях;

- большое расстояние между названием и полем ввода.

Плюсы:

- проверка на вводимые символы в поля.

Рисунок 1.1 - Бюджетный калькулятор

1.1.2 Калькулятор Windows

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

Минусы:

- плохо подобрана цветовая гамма приложения;

- ограниченный набор символов до 32;

- в инженерном режиме не активна кнопка %.

Плюсы:

- есть справка где описан весь функционал приложения;

- быстрота выполнения операций.

Рисунок 1.2 - Калькулятор Windows

1.2 Подробный обзор аналогов

Таблица 1.1 - Сравнение аналогов

Бюджетный калькулятор

Калькулятор Windows

Позиционирование и предназначение

Бюджетный калькулятор - онлайн калькулятор с возможностью расчета чистой прибыли на товар и нахождение его себестоимости.

Калькулятор Windows - стандартный калькулятор который есть в каждой OS Windows. При помощи этого калькулятора пользователь может производить различные математические вычисления: нахождения cos, sin, tan; сложение; вычитание и др.

Особенности реализации

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

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

Особенности предоставления услуг

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

Приложение бесплатное для пользователя. Приложение установлено во всех OS Windows.

Таблица 1.2 - Функционал системы

Бюджетный калькулятор

Калькулятор Windows

В калькуляторе отсутствуют кнопки для набора чисел в поле ввода.

В калькуляторе есть набор кнопок для набора чисел в поле ввода.

В калькуляторе присутствуют только поля для ввода данных и их описание.

В калькуляторе множество различных кнопок функционала.

Приложение большое размерами и целиком не помещается на экране.

Простой и компактный интерфейс приложения который удобный для использования.

Отсутствуют подсказки для удобного использования пользователем.

В калькуляторе присутствует справка, что значительно упрощает работу с ним.

1.3 Постановка задачи

Целью данной работы является создание дополнения с поддержкой инженерных расчетов.

Для этого необходимо решить следующие задачи:

- проанализировать предметную область и обозреть аналоги;

- спроектировать методы математических функций;

- спроектировать программное обеспечение приложения оперативного контроля;

- разработать инструкции пользователя.

2. Математическая модель

2.1 Определение математической модели

Математическая модель определяется как объект-заместитель объекта-оригинала, обеспечивающий изучение некоторых свойств оригинала, как «„эквивалент“ объекта, отражающий в математической форме важнейшие его свойства -- законы, которым он подчиняется, связи, присущие составляющим его частям», как систему уравнений, или арифметических соотношений, или геометрических фигур, или комбинацию того и другого, исследование которых средствами математики должно ответить на поставленные вопросы о свойствах некоторой совокупности свойств объекта реального мира, как совокупность математических соотношений, уравнений, неравенств, описывающих основные закономерности, присущие изучаемому процессу, объекту или системе[4].

2.2 Математическая модель приложения

В данном приложении используются такие математические вычисления: sin, cos, tan угла; нахождение логарифма числа; факториал числа. Рассмотрим нахождение sin, cos и tan угла на рисунке 2.1

Рисунок 2.1 - Нахождение sin, cos, и tan угла

Далее рассмотрим виды логарифмов числа:

- loga b - логарифм числа b по основанию a (a> 0, a ? 1, b> 0);

- lg b - десятичный логарифм (логарифм по основанию 10, a =10);

- ln b - натуральный логарифм (логарифм по основанию e, a = e).

А также рассмотрим формулу факториала. Факториал - произведение первых по счету, n натуральных чисел, обозначается n! Формула факториала:

для n ? N (множество натуральных чисел). По определению: 0!=1

Была рассмотрено определение метод математической модели, а также рассмотрена математическая модель для приложения спроектированного по теме дипломного проекта. Изучены основные математические функции который были использованы в приложении.

3. Проектирование программного обеспечения приложения

3.1 Обзор существующих технологий

В приложения, создаваемые с помощью Visual Studio, можно внедрять различные технологии. Некоторые из этих технологий описаны в представленной таблице 3.1.

Таблица 3.1 - Технологии Visual Studio

Технология

Описание

.NET Framework

Дополнительные сведения о .NET Framework -- неотъемлемом компоненте Windows, который поддерживает построение и выполнение нового поколения приложений и XML (веб-службы).

Windows Presentation Foundation (WPF)

WPF представляет собой набор типов .NET Framework, который можно использовать для создания внешнего вида клиентских приложений Windows. WPF состоит из таких компонентов, как расширяемый язык исправления для приложений XAML, элементы управления, привязка данных, двухмерная и трехмерная графика, анимация, стили, шаблоны, документы, мультимедийные данные, текст и типографические средства.

Windows Communication Foundation (WCF)

WCF -- это среда выполнения и набор интерфейсов API для создания систем, которые обеспечивают обмен сообщениями между службами и клиентами. Эти же самые инфраструктура и интерфейсы API используются для создания приложений, обменивающихся данными с другими приложениями на данном компьютере или на компьютере, доступ к которому можно получить через Интернет.

Windows Workflow Foundation

Компонент Windows Workflow Foundation включает модель программирования, ядро и средства для быстрого создания приложений, поддерживающих бизнес-процессы.

Silverlight

Silverlight -- это независимая от браузера, кроссплатформенная технология, позволяющая проектировать, разрабатывать и поставлять интерфейсы с поддержкой мультимедиа и многофункциональные приложения в Интернете.

Windows Forms

Windows Forms позволяет разрабатывать простые в развертывании и обновлении приложения с широкими графическими возможностями. Помимо этого, при доступе приложений Windows Forms к ресурсам на локальном компьютере обеспечивается более высокий уровень безопасности, чем при работе традиционных приложений Windows.

ASP.NET

В основу ASP.NET положены классы программирования .NET Framework. В состав этой технологии входит модель веб-приложения, набор элементов управления и инфраструктура, благодаря которым упрощается процесс построения веб-приложений.

Ajax

Технология Microsoft Ajax содержит библиотеки клиентских скриптов, включающих не зависящий от браузера скрипт ECMAScript (JavaScript) и технологии динамического HTML (DHTML). Библиотека Microsoft Ajax обычно используется для построения чистых приложений Ajax. Однако ее также можно использовать при построении веб-форм ASP.NET или приложений ASP.NET MVC. С помощью функций Ajax можно улучшить взаимодействие с пользователем и повысить эффективность веб-приложений.

Язык XAML (расширяемый язык разметки для приложений)

XAML -- это язык разметки для декларативной разработки приложений. Windows Presentation Foundation (WPF) реализует загрузчик XAML и обеспечивает поддержку языка XAML для типов WPF, поэтому большую часть пользовательского интерфейса приложения можно создавать с помощью разметки XAML.

LINQ

В LINQ используются стандартные шаблоны для запросов и обновления данных с помощью Visual Basic или Visual C#. LINQ можно расширить для поддержки большинства хранилищ данных. Visual Studio 2008 содержит сборки поставщика LINQ, которые обеспечивают интегрированный в язык механизм запросов коллекций .NET Framework, баз данных SQL, наборов данных ADO.NET и документов XML.

3.2 Технология разработки приложения

В Visual Studio предлагается множество шаблонов приложений, помогающих создавать программы, и несколько языков программирования, на которых можно их писать. Некоторые из них описаны в таблице 3.2.

Таблица 3.2

Visual Basic

Visual Basic предоставляет простой и быстрый способ создания приложений Windows, веб-приложений и приложений для мобильных устройств на базе .NET Framework. Как и все программы, предназначенные для платформы .NET Framework, программы, написанные в Visual Basic, выгодно отличаются высоким уровнем безопасности и широкими возможностями взаимодействия между языками.

Visual C#

Visual C# (произносится "Си-шарп") предназначен для построения самых разнообразных приложений, выполняемых в .NET Framework. Язык Visual C# простой, мощный, типобезопасный и объектно-ориентированный. Благодаря множеству нововведений Visual C# обеспечивает возможность быстрой разработки приложений, но при этом сохраняет выразительность и элегантность, присущую языкам C.

Visual C++

Visual C++ -- мощный язык, предназначенный для обеспечения всестороннего и детального контроля над процессом построения как собственных приложений Windows (COM+), так и управляемых приложений Windows на базе .NET Framework.

Visual F#

F# -- это язык программирования, поддерживающий функциональное программирование в дополнение к традиционному объектно-ориентированному и императивному (процедурному) программированию. Visual F# позволяет разрабатывать приложения F# и расширять другие приложения .NET Framework с помощью кода F#. F# -- это член первого класса языков .NET Framework, по многим параметрам напоминающий семейство языков функционального программирования ML.

JScript

JScript -- это следующее поколение реализованного корпорацией Майкрософт языка, соответствующего стандарту ECMA 262. Для этого языка доступен целый ряд типов приложений.

Приложения Windows

Тип приложений, предназначенный для размещения в среде Windows. Эти приложения могут быть написаны на любом языке программирования. Среди примеров таких приложений можно назвать библиотеки классов, службы Windows, консольные приложения и приложения WPF.

Веб-приложения

Тип приложений, предназначенный для размещения на веб-страницах. Эти приложения могут быть написаны на любом языке программирования. Среди примеров таких приложений можно назвать веб-приложения ASP.NET, библиотеки веб-элементов управления и элементов управления сервераASP.NET AJAX.

3.3 Логическая структура приложения

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

Наследование выполняется с помощью образования производных, то есть класс объявляется с помощью базового класса, от которого он наследует данные и поведение. Базовый класс задается добавлением после имени производного класса двоеточия и имени базового класса.

Рисунок 3.1 - Диаграмма классов

3.4 Проектирование бизнес логики

Диаграммы вариантов использования описывают взаимоотношения и зависимости между группами вариантов использования и действующих лиц, участвующими в процессе. Диаграммы вариантов использования не предназначены для отображения проекта и не могут описывать внутреннее устройство системы. Диаграммы вариантов использования предназначены для упрощения взаимодействия с будущими пользователями системы, с клиентами, и особенно пригодятся для определения необходимых характеристик системы. Другими словами, диаграммы вариантов использования говорят о том, что система должна делать, не указывая сами применяемые методы. На рисунке 3.2 изображена диаграмма вариантов, или другими словами диаграмма Use-case [7 - 9].

В результате выполнения данного этапа работы был выполнен обзор и сравнение текущих технологий. Так же рассмотрены технологии разработки приложения. Были рассмотрены различные виды языков программирования для построения приложения и построена логическая структура приложения. Были определены типы пользователей системы и взаимодействия с пользователем.

Рисунок 3.2 - Диаграмма Use case

4. Тестирование работы приложения

4.1 Инструкция пользователю

Для того, чтобы н пользователь мог работать с приложением он должен установить его на свой PC. Главное окно после установки и запуска приложения (рисунок 4.1).

Рисунок 4.1 - Главная окно приложения

После этого у он сможет пользоватся данным приложением для выполнения математических операций которые предусмотрены в нем. Например 6 * 3 (рисунок 4.2).

Рисунок 4.2 - Выполнение математической операции

После выполнения данной математической операции получим результат 18 (рисунок 4.3).

Рисунок 4.3 - Результат выполненной операции

Еще к примеру пользователь может посчитать факториал числа, возьмем число 8 (рисунок 4.4) и в результате мы получим 40320 (рисунок 4.5).

Рисунок 4.4 - Нахождение факториала

Рисунок 4.5 - Результат найденного факториала

Также в приложении пользователь может рассчитать такие основные показатели прибыли:

- балансовая прибыль;

- прибыль от реализации продукции;

- прибыль от реализации имущества;

- чистая прибыль;

- прибыль изделия.

Чтоб посчитать балансовую прибыль пользователю нужно выбрать из выпадающего списка (рисунок 4.6) пункт где указана балансовая прибыль, после чего откроется новое окно (рисунок 4.7) в котором он вводит свои данные и рассчитывает балансовую прибыль.

Далее аналогичным образом пользователь из выпадающего списка выбирает прибыль от реализации продукции (рисунок4 .8), прибыль от реализации имущества (рисунок 4.9), чистая прибыль (рисунок 4.10) и прибыль изделия (рисунок 4.11).

Рисунок 4.6 - Выбор из выпадающего списка

Рисунок 4.7 - Расчет балансовой прибыли

Рисунок 4.8 - Прибыль от реализации продукции

Рисунок 4.9 - Прибыль от реализации имущества

Рисунок 4.10 - Чистая прибыль

Рисунок 4.11 - Прибыль изделия

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

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

Целью данного раздела дипломного проекта бакалавра является экономическое обоснование разработки и внедрения программного продукта (ПП).

При расчёте цены товара следует учесть затраты на разработку ПП, для чего рассчитать трудоёмкость выполнения работ (изучение описания задачи и формулировка постановки задачи, составление алгоритма и схемы решения задачи, разработка и отладка программы, подготовка документации).

5.1 Описание программного продукта

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

Система имеет необходимые компоненты для ее полного функционирования. Пользовательский интерфейс соответствует современным требованиям, минимален и интуитивно понятен.

Для нормального функционирования части для разработки продукта необходимо выполнение следующих факторов и средств:

? компьютер IBM PC совместимый;

? процессор: Pentium 1500 МГц и выше;

? оперативная память: 1GB минимум (2GB рекомендуется);

? жесткий диск: 50 GB минимум;

? операционная система Windows XP и выше;

? MVS2010 или выше.

Для нормального функционирования клиентской части необходимо выполнение следующих факторов и средств:

? Стационарный компьютер или ноутбук с установленной операционной системой Windows XP и выше;

? процессор: Pentium 1000 МГц и выше;

? оперативная память: 512MB и выше;

? жесткий диск:300 MB и выше.

5.2 Расчет себестоимости и цены программного продукта

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

Для изменения и корректировки работы программного продукта и его подсистем следует учитывать наличие программист-аналитика.

Продолжительность рабочих дней в месяце в среднем составляет 23 дня. Состав исполнителей показан в таблице 5.1.

Таблица 5.1 - Состав исполнителей работы

Должности

Должностные оклады, грн.

Месячные

Дневные

Руководитель

2300

100

Программист

3500

150

Таблица 5.2 - Расчет трудоемкости работ

Вид работ

Продолжительность дней

Трудоемкость, чел/дн.

Исполнитель

Руководитель

Программист

Техническое задание (ТЗ)

Постановка задачи

1

1

+

Выбор платформы разработки ПО

1

2

+

+

Разработка графика хода работ

1

1

+

Определение требований к ПО

1

2

+

+

Разработка ТЗ

3

3

+

Согласование и утверждение ТЗ

2

2

+

Проектирование методического обеспечения

Разработка интерфейса

3

6

+

+

Разработка связей между элементами интерфейса

1

2

+

+

Определение методов испытаний системы

15

15

+

Тестирование программного обеспечения

5

5

+

Внедрение

Наладка и испытание продукта

3

3

+

Дополнительная отладка, корректировка

2

2

+

Испытание и сдача продукта в эксплуатацию

1

2

+

+

Итого

39

44

14

30

Расчет себестоимости работ начнем с расчета фонда основной заработной платы. Вычислим основную заработную плату разработчиков ПП, с учетом трудозатрат, количества исполнителей и среднедневной заработной платы формула. Для этого количество дней, отработанных отдельными исполнителями по стадиям, умножают на их дневные оклады:

ОЗП = 14 * 100 + 30 * 150 = 5900(грн);

Вычислим дополнительную заработную плату разработчиков ПП, с учетом трудозатрат, количества исполнителей и среднедневной заработной платы формула (5.2). Для этого вычислим 20% от ОЗП.

ДПЗ = (5900 / 100) * 20 = 1180 (грн);

Рассчитаем стоимость материалов и комплектующих, необходимых для написания программы табл. 5.3.

Таблица 5.3.Материалы и комплектующие

Материалы

Кол-во

Цена, грн.

Сумма, грн.

Назначение

Диски DVD-R

4 шт.

8

40

Хранение резервных копий, перенос программы

Бумага (пачка, 500 л.)

1 шт.

110.00

110

Документация, печать

Печать документации

300 л.

0,6

180

Различная печать

Итого

330

Определим затраченное машинное время формула. Будем считать, что руководитель пользуется компьютером в среднем 3 часа за рабочий день, а программист, следуя нормам охраны труда, в среднем 5 часов. Получим:

ТМБ = 3 * 14 + 5 * 30 = 192 (ч);

Стоимость часа машинного времени будем считать равной .

ЗМБ = 10 * 192 = 1920 (грн).

Накладные расходы примем в размере 20% от фонда заработной платы. Расчет себестоимости и договорной цены приводим в табл. 5.4.

Таблица 5.4 - Расчет себестоимости и цены ПП

№ п/п

Статьи

Затраты, грн

1

Основная заработная плата

5900

2

Дополнительная заработная плата (20 % от ОЗП)

1180

3

Отчисления в единый социальный взнос (37% от ЗП (ЗП = ОЗП+ДПЗ)

2619

4

Накладные расходы (20 % от ЗП)

1416

5

Материалы и комплектующие

330

6

Стоимость машинного времени

1920

Итого себестоимость ПП

13365

Прибыль (35%)

4677

Цена без ПДВ

18042

ПДВ (20%)

3608

Цена ПП

21650

В данном разделе был проведён анализ рынка, на котором данная программа может иметь успех, а также оценена себестоимость и цена программного продукта. Они равны 13365 грн. и 21650 грн. соответственно, рассчитаны обобщённые показатели качества разработки. В результате было установлено, что себестоимость производства системы является вполне удовлетворительной, так как не требует больших капиталовложений, что свидетельствует о инвестиционной привлекательности ее производства. ПП имеет хорошие показатели качества. Он обладает высокой надёжностью, долговечностью, уменьшает временные затраты пользователей при проведении исследований в данной предметной области.

Выводы

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

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

Объектом исследования являются математические функции и формулы.

Предметом исследования являются методы построения математических функций.

Задачами исследования являлись: анализ предметной области и методов статической обработки данных, проектирование программного обеспечения, тестирование работы приложения, а также расчет себестоимости и цены разработки дополнения для поддержки инженерных расчетов.

Методами исследования являлись: системный анализ, UML-диаграммы, математическая модель, логическая структура.

Были получены такие основные результаты: простой в использовании и удобный для пользователя графический интерфейс, доступное своей простотой приложение как для школьника так и для научного сотрудника.

Перечень ссылок

1. Павленко В.Н. Порядок оформления учебных и научно-исследовательских документов [Текст]: учеб. пособие / В.Н. Павленко, А.С. Набатов, И.М. Тараненко. - Харьков: Национальный аэрокосмический университет «Харьковский авиационный институт», 2007. - 65 с.

2. Бюджетный калькулятор

3. Гуриков С.Р. Введение в программирование на языке Visual C#. [Текст] / С.Р. Гуриков - М.: 2013- 448 с.

4. Прохоров, Ю.В. Математический энциклопедический словарь [Текст] / Ю.В. Прохоров, С.И. Адян, Н.С. Бахвалов, В.И. Битюцков - М.: “Сов энциклопедия”, 1988. - 847 c.

5. Мартин Р.С., Мартин М. Принципы, паттерны и методики гибкой разработки на языке C# [Текст] / Р.С. Мартин - Символ-Плюс, 2011 - 768 с.

6. Губка, А.С. Защита информации в информационно-управляющих системах [Текст]: учеб. пособие / А.С. Губка. - Харьков: Национальный аэрокосмический университет «Харьковский авиационный институт», 2008. - 37 с.

7. Буч Г. UML: специальный справочник [Текст]/ Г. Буч, Дж. Рамбо, У. Боггс, А. Якобсон - СПб. : “Питер”, 2002. - 656 с.

8. Боггс У. UML и Rational Rose [Текст]/ У. Боггс, М. Боггс - М.: “Лори”, 2000. - 582 с.

9. Леоненков А.В. Самоучитель UML [Текст] / А.В. Леоненков - СПб. : “BHV”, 2001. - 304 с.

10. Федорович О.Е. Информационные управляющие системы и технологии. Методические рекомендации по выполнению дипломных проектов и работ специалистов. [Текст] / О.Е. Федорович, С.А. Губка, В.А. Попов. - Харьков: Национальный аэрокосмический университет «Харьковский авиационный институт», 2005. - 35 с.

11. Робинсон С. C# для профессионалов. [Текст] / С. Робинсон, О. Корнес, Д. Глин. - М.: Лори, 2005. - 396 с.

12. Губка С.А. Управление процессами в информационных системах [Текст]/ С.А. Губка. - Харьков: Национальный аэрокосмический университет «Харьковский авиационный институт», 2005. - 64 с.

13. Формулы из конспекта лекций

14. Полтавская Т. C# Программирование на языке высокого уровня [Текст] / Т. Полтавская - Питер: 2009. - 432 с.

Приложение А

Листинг программы

Листинг главного окна

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace Calc_kursov

{

public partial class Form1 : Form

{

Double value = 0;

String operation = "";

bool operation_pressed = false;

public Form1()

{

InitializeComponent();

frm2 = new Form2();

frm3 = new Form3();

frm4 = new Form4();

frm5 = new Form5();

frm6 = new Form6();

}

Form6 frm6;

Form5 frm5;

Form4 frm4;

Form3 frm3;

Form2 frm2;

public double num1,num2,num3;

public double memory = 0;

private double Factorial(double n)// факториал

{

int res = 1;

for (int j = 1; j <= n; j++)

{

res *= j;

}

return res;

}

private void button_Click(object sender, EventArgs e)

{

if((result.Text=="0")||(operation_pressed))

result.Clear();

operation_pressed = false;

Button b = (Button)sender;

result.Text = result.Text + b.Text;

}

private void button17_Click(object sender, EventArgs e)

{

result.Text = "0";

}

private void operator_click(object sender, EventArgs e)

{

Button b = (Button)sender;

operation = b.Text;

value = Double.Parse(result.Text);

operation_pressed = true;

equation.Text = value + " " + operation;

}

private void button16_Click(object sender, EventArgs e)

{

if (result.Text != "")

{

equation.Text = "";

switch (operation)

{

case "+":

result.Text = (value + Double.Parse(result.Text)).ToString();

break;

case "-":

result.Text = (value - Double.Parse(result.Text)).ToString();

break;

case "*":

result.Text = (value * Double.Parse(result.Text)).ToString();

break;

case "/":

result.Text = (value / Double.Parse(result.Text)).ToString();

break;

default:

break;

}

}

else

{

return;

} }

private void button18_Click(object sender, EventArgs e)

{

result.Text = "0";

value = 0;

}

private void оПриложенииToolStripMenuItem_Click(object sender, EventArgs e)

{

DialogResult rsl = MessageBox.Show("Разработал Карнаух Александр", "Информация", MessageBoxButtons.OK, MessageBoxIcon.Information);

}

private void button12_Click(object sender, EventArgs e)//квадратный корень

{

if (result.Text != "")

{

double k;

k = Convert.ToDouble(result.Text);

result.Text = Convert.ToString(Math.Sqrt(k));

}

else

{

return;

} }

private void выходToolStripMenuItem_Click(object sender, EventArgs e)

{

DialogResult rsl = MessageBox.Show("Вы действительно хотите выйти из приложения?", "Внимание!", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

if (rsl == DialogResult.Yes)

{

Application.Exit();

}

}

private void Form1_Load(object sender, EventArgs e)

{

toolTip1.SetToolTip(result, "Введите\n данные");

toolTip1.IsBalloon = true;

}

private void button19_Click(object sender, EventArgs e)

{

double n = Double.Parse(result.Text);

num1 = Factorial(n);

result.Text = num1.ToString();

}

private void button20_Click(object sender, EventArgs e)

{

num1 = Double.Parse(result.Text);

num2 = Math.Pow(num1, 2);

result.Text = num2.ToString();

}

private void button21_Click(object sender, EventArgs e)

{

num1 = Double.Parse(result.Text);

num2 = Math.Pow(num1, 3);

result.Text = num2.ToString();

}

private void button22_Click(object sender, EventArgs e)

{

num1 = Double.Parse(result.Text);

num2 = Math.Log(num1);

result.Text = num2.ToString();

}

private void button23_Click(object sender, EventArgs e)

{

num1 = Double.Parse(result.Text);

num2 = Math.Log10(num1);

result.Text = num2.ToString();

}

private void button24_Click(object sender, EventArgs e)

{

num1 = Double.Parse(result.Text);

num2 = Math.Cos(num1);

result.Text = num2.ToString();

}

private void button25_Click(object sender, EventArgs e)

{

num1 = Double.Parse(result.Text);

num2 = Math.Sin(num1);

result.Text = num2.ToString();

}

private void button26_Click(object sender, EventArgs e)

{

num1 = Double.Parse(result.Text);

num2 = Math.Tan(num1);

result.Text = num2.ToString();

}

private void button27_Click(object sender, EventArgs e)// number pi

{

result.Text = Math.PI.ToString();

}

private void point_Click(object sender, EventArgs e)

{

if (result.Text == "0")

result.Text = "0,";

else

result.Text += ",";

}

private void button28_Click(object sender, EventArgs e)//(1/x)

{

num1 = Convert.ToDouble(result.Text);

num2 = 1 / num1;

result.Text = num2.ToString();

}

private void button29_Click(object sender, EventArgs e)//10^x

{

num1 = Double.Parse(result.Text);

num2 = Math.Pow(10, num1);

result.Text = num2.ToString();

}

private void button30_Click(object sender, EventArgs e)//Sinh

{

num1 = Double.Parse(result.Text);

num2 = Math.Sinh(num1);

result.Text = num2.ToString();

}

private void button31_Click(object sender, EventArgs e)

{

num1 = Double.Parse(result.Text);

num2 = Math.Cosh(num1);

result.Text = num2.ToString();

}

private void memory_clearing_Click(object sender, EventArgs e)

{

memory = 0;

textBox1.Text = "0";

}

private void memory_record_Click(object sender, EventArgs e)

{

result.Text = textBox1.Text;

}

private void memory_set_Click(object sender, EventArgs e)

{

memory = Double.Parse(result.Text);

textBox1.Text = memory.ToString();

result.Text = "0";

}

private void memory_add_Click(object sender, EventArgs e)

{

double Num2, Num3;

Num2 = Double.Parse(result.Text);

Num3 = memory + Num2;

textBox1.Text = Num3.ToString();

}

private void memory_defected_Click(object sender, EventArgs e)

{

double Num2, Num3;

Num2 = Double.Parse(result.Text);

Num3 = memory - Num2;

textBox1.Text = Num3.ToString();

}

private void балансоваяПрибыльToolStripMenuItem_Click(object sender, EventArgs e)

{

frm2.Show();

}

private void прибыльОтРеализацииПродукцииToolStripMenuItem_Click(object sender, EventArgs e)

{

frm3.Show();

}

private void прибыльОтРеализацииИмуществаToolStripMenuItem_Click(object sender, EventArgs e)

{

frm4.Show();

}

private void чистаяПрибыльToolStripMenuItem_Click(object sender, EventArgs e)

{

frm5.Show();

}

private void прибыльИзделияToolStripMenuItem_Click(object sender, EventArgs e)

{

frm6.Show();

}

}

Листинг балансовой прибыли

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Globalization;

namespace Calc_kursov

{

public partial class Form2 : Form

{

public Form2()

{

InitializeComponent();

}

private void Form2_FormClosing(object sender, FormClosingEventArgs e)

{

e.Cancel = true;

Hide();

}

private void справкаToolStripMenuItem_Click(object sender, EventArgs e)

{

DialogResult rsl = MessageBox.Show("Калькулятор разработан Карнаух Александром Вадимовичем", "Информация", MessageBoxButtons.OK, MessageBoxIcon.Information);

}

private void button2_Click(object sender, EventArgs e)

{

double s1, s2, s3, s4;

s1 = double.Parse(textBox1.Text, CultureInfo.InvariantCulture);

s2 = double.Parse(textBox2.Text, CultureInfo.InvariantCulture);

s3 = double.Parse(textBox3.Text, CultureInfo.InvariantCulture);

s4 = double.Parse(textBox4.Text, CultureInfo.InvariantCulture);

double sum1 = s1 + s2 + s3 + s4;

result1.Text = sum1.ToString();

}

private void button1_Click(object sender, EventArgs e)

{

textBox1.Text = "";

textBox2.Text = "";

textBox3.Text = "";

textBox4.Text = "";

result1.Text = "";}

Листинг прибыли от реализации продукции

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Globalization;

namespace Calc_kursov

{

public partial class Form3 : Form

{

public Form3()

{

InitializeComponent();

}

private void Form3_FormClosing(object sender, FormClosingEventArgs e)

{

e.Cancel = true;

Hide();

}

private void button1_Click(object sender, EventArgs e)

{

double a1, a2, a3;

a1 = double.Parse(textBox1.Text, CultureInfo.InvariantCulture);

a2 = double.Parse(textBox2.Text, CultureInfo.InvariantCulture);

a3 = double.Parse(textBox3.Text, CultureInfo.InvariantCulture);

double sum2 = a1 - a2 - a3;

result2.Text = sum2.ToString();

}

private void button2_Click(object sender, EventArgs e)

{

result2.Text= "";

textBox1.Text = "";

textBox2.Text = "";

textBox3.Text = "";

}

}

}

Листинг прибыли от реализации имущества

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Globalization;

namespace Calc_kursov

{

public partial class Form4 : Form

{

public Form4()

{

InitializeComponent();

}

private void Form4_FormClosing(object sender, FormClosingEventArgs e)

{

e.Cancel = true;

Hide();

}

private void button1_Click(object sender, EventArgs e)

{

double b1, b2;

b1 = double.Parse(textBox1.Text, CultureInfo.InvariantCulture);

b2 = double.Parse(textBox2.Text, CultureInfo.InvariantCulture);

double sum3 = b1 - b2;

result3.Text = sum3.ToString();

}

private void button2_Click(object sender, EventArgs e)

{

textBox1.Text = "";

textBox2.Text = "";

result3.Text = "";

}

}

}

Листинг чистой прибыли

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Globalization;

namespace Calc_kursov

{

public partial class Form5 : Form

{

public Form5()

{

InitializeComponent();

}

private void Form5_FormClosing(object sender, FormClosingEventArgs e)

{

e.Cancel = true;

Hide();

}

private void button1_Click(object sender, EventArgs e)

{

double p1, p2;

p1 = double.Parse(textBox1.Text, CultureInfo.InvariantCulture);

p2 = double.Parse(textBox2.Text, CultureInfo.InvariantCulture);

double sum4 = p1 - p2;

result4.Text = sum4.ToString();

}

private void button2_Click(object sender, EventArgs e)

{

textBox1.Text = "";

textBox2.Text = "";

result4.Text = "";

}

}

Листинг прибыли изделия

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Globalization;

namespace Calc_kursov

{

public partial class Form6 : Form

{

public Form6()

{

InitializeComponent();

}

private void Form6_FormClosing(object sender, FormClosingEventArgs e)

{

e.Cancel = true;

Hide();

}

private void button1_Click(object sender, EventArgs e)

{

double c1, c2;

c1 = double.Parse(textBox1.Text, CultureInfo.InvariantCulture);

c2 = double.Parse(textBox2.Text, CultureInfo.InvariantCulture);

double sum5 = c1 - c2;

result5.Text = sum5.ToString();

}

private void button2_Click(object sender, EventArgs e)

{

textBox1.Text = "";

textBox2.Text = "";

result5.Text = "";

}

Приложение Б

Размещено на Allbest.ru


Подобные документы

  • Требования к программе или программному изделию, к информационной и программной совместимости. Проектирование программного продукта. Процедура установки и удаления. Описание интерфейса, главное окно приложения. Основные возможности пользователя.

    курсовая работа [678,1 K], добавлен 15.02.2016

  • Анализ предметной области. Диаграмма классов. Проектирование программного продукта "Часы". Тестирование и отладка, руководство программиста. Описание работы приложения. Руководство оператора, модель жизненного цикла. Файл Times.cs, Arrow.cs, Form1.cs.

    курсовая работа [1,7 M], добавлен 20.04.2015

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

    дипломная работа [3,2 M], добавлен 18.06.2012

  • Определение системы m линейных уравнений с n неизвестными. Математическая модель задачи. Анализ входных и выходных данных. Требования к надежности разрабатываемой программы. Структурная диаграмма программного модуля. Разработка блок-схем и тестирование.

    курсовая работа [162,0 K], добавлен 28.08.2012

  • Изучение набора прикладных программ операционной системы Windows. Особенности редактирования графического объекта и масштабирования рисунка в редакторе Paint. Вычислительные операции и возможности калькулятора. Создание документов в текстовом процессоре.

    контрольная работа [577,0 K], добавлен 05.11.2012

  • Проектирование вариантов использования приложения. Анализ существующей версии приложения. Обоснование выбора инструментальных программных средств. Проектирование интерфейса пользователя. Адаптация под мобильные устройства. Описание программного продукта.

    курсовая работа [2,8 M], добавлен 25.06.2017

  • Проектирование службы Windows и приложения для управления этой службой, которое позволит контролировать данные приложения - запускать и завершать определенные процессы по желанию пользователя через определенные промежутки времени. Инструкция по установке.

    курсовая работа [2,8 M], добавлен 05.01.2013

  • Обоснование языка программирования Object Pascal и среды разработки Delphi. Создание интерфейса пользователя. Проектирование структуры и описание компонентов, использованных при разработке программного продукта. Составление инструкции пользователя.

    курсовая работа [888,7 K], добавлен 20.05.2015

  • Диаграмма прецедентов взаимодействия игрока и программного продукта. Требования к пользовательскому интерфейсу. Диаграмма состояний проектируемого приложения. Выбор инструментальных средств разработки. Проектирование алгоритмов и иерархии классов.

    дипломная работа [9,9 M], добавлен 20.03.2017

  • Структура математической модели линейной задачи, алгоритм симплекс-метода. Разработка программы: выбор языка программирования, входные и выходные данные, пользовательский интерфейс. Описание программы по листингу, тестирование, инструкция по применению.

    курсовая работа [1,2 M], добавлен 31.05.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.