Раздел 1. Технологический цикл обработки информации на компьютере.

Литература [1.4]

Давать понятия языков программирования, знать в чем заключается отличие языков «низкого» и высокого уровня. Иметь понятия о типах ошибок.

 

 

Раздел 2. Понятие алгоритма. Свойства, способы описания.

Литература [1.4]

 

Знать понятие алгоритмизации. Знать основные свойства алгоритма. Рассматривать способы описания алгоритмов и изучить правила составления блок-схем. Иметь представление о типах алгоритмов.

 

 

Раздел 3. Алгоритмы, структура данных и система программирования Delphi (консольное приложение).

Литература [1.1],[1.2], [1.3]

 

Знать структуру программного модуля. Познакомиться с составом интегрированной среды (окно среды, команды главного меню, «горячие» клавиши).

Знать условный оператор, оператор выбора. Уметь применять логические операций в Паскале, таблицы истинности, основные законы алгебры логики при программировании.

 

Знать операторы организации циклов (for, while, repeat until).

 

Программировать при помощи итерационных алгоритмов и программ. Рассматривать принцип организации итерационных алгоритмов и программ.

 

Уметь описывать, размещать в памяти массивы. Применять знания для решения задач с использованием массивов.

 

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

 

Знать, в чем заключается принцип метода пошаговой детализации (последовательного уточнения) разработки алгоритмов. Уметь использовать особенности массивов в качестве параметров при программировании задач пошаговой детализации.

 

Изучить способы организации библиотек, стандартные библиотечные модули и модули пользователя. Знать структуру Unit-а. Программировать собственные модули.

 

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

 

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

 

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

 

 

Иметь представление об организации память. Знать понятие стековой памяти. Знать директивы управления памятью. (SM). Уметь применять знания о статическом и динамическом распределении памяти. Знать понятие указателя. Знать процедуры управления распределения динамической памяти. Уметь применять знания для обработки динамических массивов.

 

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

 

Раздел 4. Основные комбинаторные алгоритмы и алгоритмы на графах.

Литература[1.7],[2.3]

 

Познакомиться с алгоритмами генерации перестановок. Иметь понятие о множестве всех подмножеств, k-элементных подмножеств множеств, разбиения множества.

 

Знать основные понятиями теории графов. Сформировать знания о способах представления ориентированных и неориентированных графов.

Сформировать представление о поиске в графе, построении остового дерева графа. Знать алгоритмы поиска кратчайших путей в графе, поиска эйлерова пути в графе.

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