Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
печать программирование контрольная работа.doc
Скачиваний:
2
Добавлен:
07.12.2018
Размер:
144.38 Кб
Скачать

2. Программная реализация решения задачи

2.1 Выбор языка программирования и среды разработки

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

В последнее время появилась потребность в эффективных средствах разработки программного обеспечения. Это привело к появлению систем программирования, ориентированных на так называемую «быструю разработку» или RAD- систем(Rapid Application Development – среда быстрой разработки приложений). В её основе лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берёт на себя большую часть рутины, оставляя программисту работу по конструированию диалоговых окон и созданию функции обработки событий.

Одной их широко используемых RAD- систем является Borland C++Builder, которое позволяет создавать различные программы: от простейших однооконных приложений до программ управления распределёнными базами данных. В качестве языка программирования в среде Borland C++Builder используется С++. Система программирования Borland C++Builder 6 завоевала достаточно прочные позиции среди профессиональных и начинающих программистов. Здесь можно отметить ряд причин: большая популярность языка программирования С++, удобство визуального конструирования приложений, эффективность генерируемого кода и др. Несмотря на появление других систем программирования таких как Visual C++ , система C++Builder устойчиво занимает свою нишу. Это обусловлено меньшей требовательностью к аппаратным ресурсам при разработке приложений, большей легкостью в освоении и применении средств системы для разработки приложений достаточной степени сложности.

С++ является объектно-ориентированным языком (ООЯ). Разработчик С++ - Бьерн Страуструп - хотел разработать ООЯ на базе С. Объектно-ориентированный подход пытается писать программы не в терминах ЭВМ, а в терминах нашей суровой действительности (предметной области). Например, необходимо написать программу, которая будет обрабатывать информацию об автомобилях. В программе на С был бы набор переменных, описывающих авто (марка, объем двигателя и т.д.) и набор функций для работы с этими переменными. Может быть переменные были бы объединены в структуру. В С++ был бы класс, описывающий авто и содержащий методы (функции в терминах С), для обработки информации об автомобиле. Вроде бы подход С и С++ почти похож (тем более, что классы являются дальнейшим развитием структур). Но в С++ есть несколько кардинальных отличий:

Инкапсуляция (сокрытие данных). Сведения о том, как хранится информация в классе от программиста, его использующего, скрыта. Например, если в классе есть метод, для получения объема двигателя, то программисту безразлично как эта информация определяется: или вычисляется или хранится в отдельной переменной. Такой подход, во-первых, уменьшает количество сущностей, которые необходимо знать программисту (принцип бритвы Оккама), во-вторых предоставляет большую свободу разработчику класса. Разработчик может как угодно менять внутренне содержимое класса, не влияя на программы, использующие этот класс. В С эта информация доступна пользователю и есть соблазн использовать ее на прямую, что может повлечь за собой необходимость переделки всей программы. Например, если раньше для объема двигателя применялась переменная, и программа к ней обращалась, то при переходе к расчету объема двигателя с помощью функции, программу надо переделывать для использования этой функции.

Наследование. Автомобиль является частным случаем транспортного средства. ООЯ позволяют строить новые, более специализированные, типы данных на базе уже существующих.

Полиморфизм. Несколько функций могут иметь одно и тоже значение. Это применяется когда для разных типов надо выполнять похожие действия. Зачатки полиморфизма есть и в обычных языках. Например символом '+' обозначается сложение и целых и вещественных чисел. Однако эти операции для разных типов данных выполняются по-разному.

Эти особенности С++ упрощают процесс программирования.

На основе объектно-ориентированного подхода был разработан алгоритм решения задачи представленный на рисунке 1.

Рисунок 1

2.2 Руководство пользователя

2.2.1 Системные требования к среде выполнения программы

Для нормальной работы с данным программным продуктом требуется IBM-совместимый компьютер следующей конфигурации: тактовая частота процессора не менее 500 МГц, оперативная память не менее 32 МВ, видеоадаптер SVGA, объём свободного места на жестком диске не менее 15 МВ, операционная система Microsoft Windows 95/98/NT/2000/XP, устройство для чтения компакт-дисков.

2.2.2 Установка программы на компьютер пользователя

Установка программного продукта производится с компакт – диска на компьютер следующим образом:

  1. вставить CD-ROM с программным продуктом в устройство чтения компакт-дисков;

  2. произвести копирование папки massiv с программным продуктом в папку C:\Program Files

2.2.3 Работа с программой

Работа с программой начинается с открытия файла massiv.exe из папки с установленной программы. В результате откроется окно с

программы представленное на рисунке. В окне отображено две панели: одна предназначена для ввода чисел (левая), другая предназначена для вывода чисел в упорядоченном виде. Также в окне расположены две кнопки для выполнения сортировки массива. Одна кнопка сортирует по возрастанию – кнопка «Возрастание». Другая кнопка сортирует по убыванию – кнопка «Убывание».

Рисунок 2 - Окно приложения после загрузки.

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

Рисунок 3 - Ввод данных.

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

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

Рисунок 4 – Результат работы кнопки «Возрастание».

При нажатии на кнопку «Убывание» соответственно вывод чисел по убыванию.

Рисунок 5 – Результат работы кнопки «Убывание».