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

1. „Дискретна математика”

  • Математична логіка.

Логіка висловлювань. Закони логіки висловлювань. Нормальні форми логіки висловлювань. Логіка першого ступеня.

  • Основи теорії множин.

Поняття множини. Поняття кортежа. Декартів добуток множин. Операції над множинами. Доведення рівностей з множинами. Комп’ютерне зображення множин.

  • Теорія графів.

Основні означення та властивості. Деякі спеціальні класи простих графів. Способи задання графів. Шляхи та цикли, зв’язність. Ізоморфізм графів. Ейлерів цикл у графі. Гамільтонів цикл у графі. Зважені графи та алгоритми пошуку найкоротшого шляху. Обхід графів. Планарні графи.

  • Дерева та їхнє застосування.

Основні означення та властивості. Обхід дерев. Префіксна та постфіксна форми запису. Бінарне дерево пошуку. Дерева прийняття рішень. Алгоритм бектрекінг.

  • Відношення.

Відношення та їхні властивості. Відношення еквівалентності. Відношення часткового порядку. Операції над відношеннями.

  • Основи теорії автоматів.

Основні вимоги до алгоритмів. Машини Тьюрінга. Обчислення числових функцій на машині Тьюрінга.

2. „Основи програмування та алгоритмічні мови”

  • Поняття інформації. Типи інформації. Поняття даних. Синтаксис, семантика даних. Поняття алгоритму. Властивості алгоритмів. Поняття блок-схеми.

Системи числення і формати представлення даних у пам'яті ЕОМ. Поняття програми та оператора. Шаблон програми. Оператори та вирази. Типи даних. Поняття змінної. Оператор присвоєння та оператори введення-виведення даних. Форматування виведення. Лінійний операторний процес та операторний процес з розгалуженням. Умовні оператори та оператор вибору.

  • Поняття циклу. Арифметичні та ітераційні цикли. Поняття ітерації. Цикли з перед- і післяумовою. Циклічні оператори мови Pascal.

Поняття масивів даних. Одно- та багатовимірні масиви. Специфіка роботи з масивами. Основні типи задач на масиви даних: вибірка, сортування, фільтрування, обхід. Комбіновані типи даних. Типи даних користувача. Записи. Робота з елементами записів. Множини. Операції над множинами. Специфіка реалізації і роботи з множинами на мові Pascal.

  • Поняття підпрограми. Поняття процедури та функції. Поняття фактичних та формальних параметрів процедур та функцій. Передача значень у підпрограму. Виклик підпрограм.

Поняття файлової змінної. Робота з зовнішніми файлами. Створення, відкриття та введення-виведення інформації з/в файл.

Стрічковий тип даних. Поняття стрічки. Робота з стрічками. Процедури та функції по роботі з стрічками.

  • Робота з графікою на мові Pascal.

  • Поняття вказівника.

Розіменування вказівника. Робота з динамічними змінними на мові Pascal. Поняття списку, стеку, черги. Робота з одно- двонапрямленими та кільцевими списками. Робота із стеком.

3. „Проблемно-орієнтовані мови програмування”

  • Структура програми на базові елементи мови Турбо Сі

Характеристика мови Сi. Версiї та компiлятори мови. Огляд лiтератури для самостiйної роботи.

Структура програми на мовi Сi. Основна та допоміжні функцiї. Їх структура, розмiщення у програмі та досяжність. Оголошення глобальних та локальних змiнних. Елементи мови: алфавiт, iдентифiкатори, зарезервованi слова, константи, коментарi.

  • Препроцесорне опрацювання програми

Визначення символiчних констант. Побудова макросів. Директиви включення файлів. Директиви умовної компіляції програми. Прагми.

  • Основні типи даних мови Турбо Сі та елементарне введення-виведення

Структура типів даних мови Турбо Сі. Основнi типи: цiлий, дiйсний, символьний, порожній. Знаковi та беззнаковi типи даних. Внутрiшнє представлення основних типiв даних. Оголошення типів та змінних у програмі. Стандартнi функцiї введення-виведення. Форматоване введення-виведення. Формати та специфiкацiї перетворення даних основних типiв. Безформатне введення-виведення символiв та рядків. Функція fflush().

  • Операції та вирази мови Турбо Сі

Арифметичнi операції, вiдношення, присвоєння, комбiнованi, iнкремент, декремент, порозряднi, логiчнi, адреснi, умовна, визначення розмiру, кома. Прiоритет операцiй. Явна та неявна схеми перетворення типiв даних у виразах та в операцiї присвоєння. Бiблiотечнi функцiї мови Турбо Сі для опрацювавння числових даних. Особливість операції ділення в С. Інкремент і декремент. Порозрядні операції. Операції зсуву. Операції відношення. Логічні операції.

  • Оператори мови Турбо Сі

Синтаксис та призначення простих (присвоєння, звернення до функції), пустого та складеного операторів. Оператори управлiння: умовнi, вибору варіантів, циклу, виходу з циклу, передачi управлiння на початок циклу, безумовного переходу, повернення результатiв роботи функцiї.

  • Вказівники

Оголошення вказівників. Базові типи вказівників. Тип “вказівник на вказівник”. Ініціалізація вказівників. Операції над вказівниками та правила адресної арифметики. Особливості адресування даних, розміщених в одному та в різних сегментах. Стандартні моделі пам’яті та вказівники. Динамічна пам’ять та вказівники. Функції malloc(), calloc(), realloc(), free().

  • Робота з масивами даних

Масиви числових даних. Особливостi оголошення та iнiцiалiзацiї. Доступ до елементів масивів за допомогою індексів та вказівників. Масиви у динамічній пам’яті. Передача масивів у функції та повернення з функцій. Організація введення-виведення елементів масивів. Масиви вказiвникiв та робота з ними. Використання масиву вказівників для доступу до параметрів командного рядка основної функцiї. Модифікатори near, far, huge.

  • Функції

Структура функції. Допустимі типи функції. Оголошення функцій в стилі мови Турбо Паскаль та Турбо Сі. Розташування та досяжність у програмі. Прототипи функцій. Організація виклику функції. Формальні і фактичні параметри. Передача параметрів “по значенню”. Передача та повернення даних з функції за допомогою параметрів-вказівників. Оголошення вказівників на функції та їх використання. Рекурсивні функції. Функції зі змінним числом параметрів. Особливості оголошення та доступу до параметрів. Послідовність передачі параметрів у функцію - модифікатори cdecl і pascal. Використання макросів для організації функцій із змінною кількістю аргументів.

  • Передавання параметрів у функцію main().

Синтаксис опису функції main() для передачі їй переметрів. Слова командного рядка та середовище програми як параметри функції main(). Повернення значення з функції main(). Вказівник на функцію. Масиви вказівників на функції. Модифікатори near, far, huge для вказівників на функції.

  • Керування даними та класи пам'яті

Глобальні та локальні дані. Розміщення у програмі, особливості доступу та перекриття. Область дії та час життя змінних. Автоматичний, статичний, зовнiшнiй та регiстровий класи пам’яті. Зовнiшнi данi та функцiї. Сумiсна компоновка декiлькох файлiв програми.

  • Рядки символів

Масиви символів та рядки символів. Оголошення, розміщення у пам’яті, ініціалізація та доступ до елементів. Масиви рядків символів. Особливості оголошення та доступу до елементів. Передача рядків символів у функції та повернення з функцій. Функції форматованого та безформатного введення-виведення рядків символів. Основні бібліотечні функції для роботи з рядками символів.

  • Структури, бітові поля та об’єднання

Оголошення структур, бітових полів та об’єднань, їх ініціалізація, доступ до полів та особливості розміщення в пам’яті. Організація введення-виведення структурованих даних. Передача структур у функції. Функції з типом структури.

  • Робота з дисковими файлами

Текстовий та двійковий режим відкриття файлів. Текстовий та двійковий формати файлів. Потокове буферизоване та префіксне небуферизоване введення-виведення. Функції форматованого та безформатного введення-виведення для роботи з текстовими файлами. Функції блокового введення-виведення для роботи з двійковими файлами. Організація прямого доступу до дискових файлів. Низькорівневе префіксне небуферизоване введення-виведення. Організація виводу iнформацiї на друк. Двійковий режим обміну з файлами (функції getc() та putc() ). Рядковий обмін із файлами (файлами (функції fgets() та fputs() ). Режим форматного обміну з файлами (функції fprintf() та fscanf() ). Позиціонування в потоці (функція fseek() ).

  • Робота з динамічною пам’яттю

Видiлення та звільнення пам'ятi в процесi реалiзацiї програми. Динамiчнi структури даних. Побудова списку, дерева, черги, стеку. Операцiї над динамiчними структурами даних. Бiблiотечнi функцiї для роботи з динамічною пам’яттю.

  • Функції консольного введення-виведення

Організація консольного введення-виведення. Бібліотечні функції керування клавіатурою. Введення символів без відображення на екрані. Перевірка наявності символів у буфері клавіатури. Керування екраном у текстовому режимі роботи відеоадаптера. Виведення, запам’ятовування, витирання та відновлення вікон. Керування кольорами символів та фону. Побудова меню, керованого від клавіатури

  • Графіка Турбо Сі

Ініціалізація графічної бібліотеки Турбо Сі. Графічні режими. Вікна та системи координат. Функції керування кольорами. Графічні примітиви Турбо Сі: лінії, кола, еліпси, сектори, шрифти. Збереження та відновлення графічного екрану. Перехід у текстовий режим та повернення у графічний режим. Закриття графічного режиму.

  • Системно-залежні розширення мови

Виконання команд мови асемблера. Переривання та бiблiотечнi функцiї для взаємодiї з операцiйною системою. Функції перивання 0х33 для керування мишею. Використання миші для керування інтерфейсом програми. Функції керування процесами. Особливості комплексування програм на мовах Турбо Паскаль та Турбо Сі.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]