Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Для РГУТИС / Программирование и основы алгоритмов(готова).doc
Скачиваний:
27
Добавлен:
17.04.2015
Размер:
181.25 Кб
Скачать

Тема 6 Основные конструкции языков программирования

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

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

Тема 7 Операторы языка программирования

Операторы: присваивание, ввод, вывод. Простейшие программы. Выражения в языке: арифметические и логические.

Организация повторений работы программы. Составной и условный операторы. Оператор выбора.

Простейшие циклы. Циклы с итерациями и циклы в циклах. Примеры использования языковых конструкций.

Тема 8 Структуры данных

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

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

Раздел 3 Алгоритмические методы решения вычислительных задач

Тема 9 Алгоритмическое решение задач сортировки

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

Тема 10 Алгоритмическое решение задач поиска

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

Лабораторная работа № 3: Разработка алгоритмов и программ сортировки и поиска данных

Тема 11 Программирование рекурсивных алгоритмов

Понятие рекурсии. Виды рекурсии (прямая и косвенная). Механизм рекурсии. Использование рекурсии для записи решений. Древовидные структуры. Бинарное дерево. Правила обходов деревьев: инфиксная форма, префиксная форма, постфиксная форма. Особенности использования рекурсии для построения дерева. Сортировка и поиск с помощью дерева.

Тема 12 Объектно-ориентированное программирование

Объектно-ориентированная разработка; инкапсуляция и информационное упрятывание; отделение описания интерфейса от реализации; классы, подклассы и наследование; полиморфизм; иерархия классов; пакеты классов и протоколы взаимодействия; программирование на основе шаблонов.

Лабораторная работа № 4: Объектно-ориентированная методология разработки программ

Тема 13 Событийно-управляемое, параллельное и распределенное программирование

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

1.5 Темы практических занятий

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

1.6 Темы лабораторных работ

Лабораторные работы предназначены для приобретения практических навыков в работе по разработке алгоритмов и программ.

№№ и названия

разделов и тем

Цель и содержание лабораторной работы

Результаты

лабораторной работы

Лабораторная работа № 1: Проектирование базовых структур алгоритмов

Раздел 1. Тема 3

Разработка блок-схем решения различных задач

Блок схемы. Практические навыки разработки алгоритмов. Отчет.

Лабораторная работа № 2: Освоение средств разработки программ

Раздел 2. Тема 5

Изучение основных методов и инструментов разработки программного обеспечения.

Практические навыки разработки программ. Отчет.

Лабораторная работа № 3: Разработка алгоритмов и программ сортировки и поиска данных

Раздел 3. Тема 10

Изучение алгоритмов сортировки и поиска данных.

Блок-схемы. Тексты программ. Практические навыки. Отчет.

Лабораторная работа № 4: Объектно-ориентированная методология разработки программ

Раздел 3. Тема 12

Изучение основ объектно-оринтированной разработки программного обеспечения

Тексты программ. Практические навыки. Отчет.

Для выполнения лабораторных работ предусмотрены Методические указания к лабораторным работам по дисциплине «Программирование и основы алгоритмов»