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

Задание на курсовую работу

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

Содержание

Введение 4

1. Обзор методов и алгоритмов решения поставленной задачи 6

2. Обоснование выбранных методов и алгоритмов 8

3. Описание программы для программиста 10

4. Описание алгоритмов решения задачи 14

5. Руководство пользователя 17

Заключение 20 Литература 21

ПРИЛОЖЕНИЕ А (листинг программы с комментариями) 22

ПРИЛОЖЕНИЕ Б (скриншоты работы программы) 35

Введение

Язык программирования С++ был разработан в середине 80-х Бьерном Страуструпом из компании Bell Labs. Этот язык стал современным и могучим наследником языка С.

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

Объектно-ориентированное программирование представляет собой технологию программирования, которая базируется на классификации и абстракции объектов. Язык С++ реализует три основные концепции объектно-ориентированного программирования: инкапсуляцию, наследование и полиморфизм. Благодаря этому объектно-ориентированное программирование обладает следующими достоинствами:

  • повышенная защищенность объектов от кода других частей программы как результат использования инкапсуляции;

  • сокращение сроков построения программы на основе механизма наследования;

  • исключение избыточного кода на основе концепции полиморфизма.

В последнее время язык С++ пополнился рядом нововведений. Среди них – стандартная библиотека шаблонов (STL), пространства имен, идентификация типов и булев тип.

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

Использование языка ассемблера — это один из наиболее действенных методов оптимизации.

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

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

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