Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОАиП 2 Семестр / 1_ОАиП.doc
Скачиваний:
60
Добавлен:
21.03.2016
Размер:
185.34 Кб
Скачать

Цель курса «Основы алгоритмизации и программирования» состоит в изучении основ программирования на алгоритмических языках высокого уровня и в использовании полученных навыков при решении инженерных задач.

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

В качестве рабочей среды взята среда программирования Dev-C++. Dev-C++ — это интегрированная среда для программирования на языках С и C++, работающая под управлением операционной системы Windows.

Среда Dev-C++ распространяется свободно с исходными кодами (на Delphi) по лицензии GPL.

Достоинства оболочки Dev-C++:

  • графический интерфейс;

  • русскоязычное меню;

  • встроенный отладчик GDB;

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

Ключевые особенности и функции программы:

  • простой и практичный интерфейс;

  • наличие инструментов для полноценного написания кода на С/С++;

  • наличие встроенного отладчика;

  • возможность написания, как консольных приложений, так и проектов использующих Windows API;

  • возможность подключения дополнительных библиотек;

  • бесплатное распространение программы.

1 Основы алгоритмизации

1.1 Понятие об алгоритме

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

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

1.2 Свойства алгоритма

Рассмотрим основные свойства, которыми должен обладать создаваемый алгоритм.

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

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

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

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

Результативность – это свойство состоит в том, что результат выполнения алгоритма исполнитель должен получить, выполнив конечное число действий. Если для каких-то допустимых исходных данных исполнитель не может получить результат выполнения алгоритма за конечное число шагов, то говорят, что алгоритм не применим для этих исходных данных.

1.3 Средства записи алгоритма

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

  • словесно-формульная;

  • графическая схема алгоритма (блок-схема);

  • запись на алгоритмическом языке;

  • в виде программы на языке программирования.

Язык программирования – это способ записи алгоритма, ориентированный на исполнение его системой программирования компьютера.

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

Наиболее часто при разработке и документировании программы, лежащие в ее основе алгоритмы, изображаются в виде графических схем алгоритма или блок-схем.

Алгоритм большой сложности обычно представляется с помощью схем двух видов:

  • обобщенной схемы алгоритма – раскрывает общий принцип функционирования алгоритма и основные логические связи между отдельными модулями на уровне обработки информации (ввод и редактирование данных, вычисления, печать результатов и т.п.);

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

Соседние файлы в папке ОАиП 2 Семестр