П Р О Г Р А М А вступного фахового іспиту з математики і інформатики для здобуття освітнього ступеню магістра за спеціальністю 122 – «Комп’ютерні науки та інформаційні технології» (освітня програма – «інформатика») (освітньо-професійний рівень)

СКАЧАТЬ

Математика

  1. Дії над матрицями. Власні вектори та власні значення.
  2. Рівняння прямої на площині та у просторі. Рівняння площини у просторі.
  3. Дослідження функції однієї змінної за допомогою похідної (монотонність, екстремуми, опуклість).
  4. Обчислення інтегралу Рімана (формула Ньютона-Лейбниця, заміна змінної, інтегрування частинами).
  5. Збіжність та сума ряду . Ознака збіжності Даламбера.
  6. Загальний розв’язок лінійного однорідного диференціального рівняння зі сталими коефіцієнтами. Знаходження розв’язку задачі Коші для цього рівняння.
  7. Функція розподілу випадкової величини. Густина розподілу.
  8. Математичне очікування дискретної випадкової величини та випадкової величини, розподіл якої задається густиною.
  9. Операції над множинами. Формула включення-виключення.
  10. Біноміальні коефіцієнти. Трикутник Паскаля. Формула бінома Ньютона. Кількість всіх підмножин nелементної множини.

Інформатика

Структурне програмування та алгоритми

  1. Поняття типу даних. Базові типи даних. Подання даних базових типів у комп’ютері.
  2. Робота з функціями. Призначення функцій. Опис (сигнатура), визначення та виклик функції. Формальні та фактичні параметри.
  3. Вказівники, динамічні змінні. Призначення та застосування. Операції взяття адреси та разіменування. Операції над вказівниками, адресна арифметика.
  4. Масиви (статичні й динамічні). Призначення масивів. Виділення пам’яті та розташування елементів, принцип доступу до елементів.
  5. Структури та об’єднання. Призначення структур (об’єднаннь). Виділення пам’яті та розташування елементів, принцип доступу до елементів.
  6. Робота з файлами. Стандартний та системний рівні. Текстові та двійкові файли. Поняття файлової змінної, її подання у комп’ютері. Основні операції з файлами. Поняття буферу.
  7. Зв’язані списки. Призначення та застосування. Організація та розташування елементів в пам’яті комп’ютера. Порівняння з масивами. Операції вставки та видалення елементів.
  8. Бінарні дерева. Типи бінарних дерев. Призначення та застосування кожного типу. Збалансовані дерева пошуку. Операції вставки та видалення елементів.
  9. Алгоритми сортування. Класифікація алгоритмів сортування, їх порівняльний аналіз.
  10. Алгоритми пошуку. Класифікація алгоритмів пошуку, їх порівняльний аналіз.

Об’єктно ориентоване програмування 

  1. Поняття класу, конструктор, операції класу. Протокол класу. Об’єкт класу Дані-члени, функції-члени. Статичні члени класу. Конструктор копії. Вказівники та посилання на класи.
  2. Інкапсуляція та методи її забезпечення. Приватні, захищені, відкриті члени класу.
  3. Спадкування як спосіб моделювання відношення «is_a». Перевизначення методів у похідних класах.
  4. Поліморфізм та його застосування. Поняття поліморфізму. Раннє та пізнє зв’язування. Віртуальні функції. Чисті віртуальні функції. Поняття абстрактного класу. Віртуальні деструктори. Множинне спадкування, його види та правила застосування.
  5. Агрегація як спосіб моделювання відношення «has_a». Поняття внутрішнього класу. Статичні внутрішні класи. Локальні та анонімні внутрішні класи.
  6. Абстрактні класи, інтерфейси. Поняття інтерфейсу, реалізація інтерфейсу. Спадкування інтерфейсів.
  7. Механізм виключень. Обробка виключень, проблема завершення.
  8. Потоки введення-виведення, механізм серіалізації. Аналіз та управління станом потока.

Бази даних

  1. Концептуальна модель БД (ER діаграма).
  2. Моделі даних. Реляційна модель даних. Відношення, атрибути, кортежи, домени, ключі.
  3. Цілісність даних в реляційній моделі. Цілісність за сутностями й доменна цілісність.
  4. Мова SQL. Багатотабличні та підсумкові запити на вибірку.
  5. Види об’єднань відношень. Внутрішнє та зовнішнє об’єднання.
  6. Мови DDL(Data Definition Language) и DML(Data Manipulation Language).

Література

Математика

  1. Тер-Крикоров А. М., Шабунин М. И. Курс математического анализа. – М .: Физматлит, 2003.
  2. Кудрявцев Л. Д. Краткий курс математического анализа. – М.: Наука, 1989.
  3. Понтрягин Л. С. Обыкновенные дифференциальные уравнения. – М.: Наука, 1974.
  4. Самойленко А. М., Кривошея С. А., Перестюк Н. А. Дифференциальные уравнения. Примеры и задачи. – М.: Высшая школа, 1989.
  5. Гельфанд И. М., Лекции по линейной алгебре. – М. : Наука, 1970.
  6. Ильин В. А., Поздняк Э. Г. Линейная алгебра. – М. : Наука, 1984.
  7. Погорелов А. В. Аналитическая геометрия. – М.: Наука, 1978.
  8. Борисенко О.А., Ушакова Л.М. Аналiтична геометрiя. – Х. : Основа, 1993.
  9. Бондаренко М.Ф., Білоус Н.В., Руткас А.Г. Комп’ютерна дискретна математика. Х., Компанія СМІТ, 2004.
  10. Колмогоров А.Н., Журбенко И.Г., Прохоров А.В. Введение в теорию вероятностей. М., Наука, 1982.
  11. Гнеденко Б.В., Хинчин А.Я. Элементарное введение в теорию вероятностей. М., Наука, 1982.
  12. Б.В. Гнеденко. Курс теории вероятностей. М., 1980.

Інформатика

Структурне програмування та алгоритми

  1. Б. Керниган, Д. Ритчи. Язык программирования, С,2-е издание,М: Вильямс, 2009 – 292 с.
  2. С. Пратт, Язык программирования С++. Лекции и упражнения, 5е изд. – М.: Вильямс, 2007. – 1184 с.
  3. Шилд. Справочное руководство по языку СПб.:Вильямс , 2011.-1056 с.
  4. Н. Вирт. Алгортитмы и структуры данных.+CD-ROM.: ДМКПресс, 2011.- 272 с.
  5. Ахо, Ульман. Алгортитмы и структуры даннях.М: Вильямс, 2009 – 384 с.
  6. Роберт Седжвик. Фундаментальные алгоритмы. Анализ. Структуры данных. Сортировка и поиск.С++. Части 1-4, Диасофт, 2001.
  7. Роберт Седжвик. Фундаментальные алгоритмы. Алгоритмы на графах.С++. Часть 5, М: ДиаСофтЮП, 2002.

Обєктно ориентоване програмування 

  1. Б. Строустрап. Язык программирования С++. – М.: Бином,
  2. Г. Буч, Дж. Рамбо, А. Джекобсон. Язык UML. — М.: ДМК – 2000.
  3. Г. Буч. Объектно – ориентированный анализ и проектирование. – М.: Бином. – 1999.
  4. К. Арнольд, Дж. Гослинг, Д. Холмс. Язык программирования Java. – М. : Вильямс. – 2001.
  5. П. Ноултон, Г. Шилдт. Java 2. – СПб. : БХВ – Петербург. – 2001.
  6. Б. Эккель. Философия Java. – СПб. : Питер. – 2001.
  7. С. Прата. Язык программирования С++. Лекции и упражнения. – СПб.: ДиаСофт. – 2003.
  8. Г. Шилдт. Полный справочник по С++. 4 и-е. – М.: Вильямс. – 2003.
  9. М. Морган. Java 2. руководство разработчика. — М. : Вильямс.  – 2000.

Бази даних

  1. Майер Д. Теория реляционных баз данных, — М.: Мир, 1987. – 608 с.
  2. Цикридзис Д., Лоховский Ф. Модели данных, — М.: Финансы и статистика, 1985. – 344 с.
  3. Дейт К. Дж. Введение в системы баз данных, 6-е издание. – Москва – С. Петербург – Киев: Вильямс, 1999. – 846 с.
  4. Ульман Дж. Основы систем баз данных. – М.: «Финансы и статистика», 1983. – 334 с.
  5. Тиори Т., Фрай Дж. Проектирование структур баз данных. (В двух томах) – М.: «Мир», 1985.

Приклади завдань.

Математика

  1. Дайте означення функції, опуклої (вниз) на інтервалі .
  2. Сформулюйте достатню умову опуклості (вниз) на інтервалі у термінах другої похідної
  3. Перевірте, що функція  є опуклої (вниз) на інтервалі
  4. Дослідіть функцію  за допомогою похідної та побудуйте її графік

Інформатика

Структурне програмування та алгоритми

У файлі зберігається декілька фрагментів тексту, розділених одним пустим рядком,  за яким через два пусті рядка йде набір ключових слів,  кожне ключове слово в окремому рядку. Необхідно побудувати довідник частот входження ключових слів до фрагментів тексту у наступному вигляді: для кожного фрагменту  вказується його номер у порядку слідування в файлі, за яким йде список ключових слів в послідовності зменшення їх частот повторювання в цьому фрагменті (слова які не зустрічаються в цьому фрагменті, не повинні входити у список).

  1. Опишіть структури даних для зберігання довідника у вигляді масиву, розмір якого дорівнює кількості фрагментів тексту, а кожний елемент містить адресу дерева пошуку, інформаційне поле кожного  вузла якого містить ключове слово і частоту появи цього слова у відповідному фрагменті  тексту ( дерево впорядковано по частотам ).
  2. Запишіть алгоритм розв’язання задачі.
  3. Задекларуйте динамічний масив для зберігання довідника та забезпечте виділення пам’яті.
  4. Передбачається, що існує готова функція wordInTexts(…), яка виконує пошук заданого слова в кожному фрагменті тексту в файлі, формує масив частот його появи по фрагментах і повертає адресу початку цього масиву. Напишіть сигнатуру функції wordInTexts(…). Задекларуйте змінні для роботи з масивом, що повертає функція, і з деревом пошуку, описаним в п.1.
  5. Напишіть функцію додавання інформації, отриманої в результаті виклику функції wordInTexts(…) для конкретного ключевого слова, в массив дерев пошуку (п.1).
  6. Напишіть функцію виведення довідника на екран в наступному вигляді: номер фрагмента

список ключових слів в порядку зменшення частот (слова з нульовою частотою не виводяться).

Обєктно ориентоване програмування 

У файлі зберігаються декілька фрагментів тексту, розділених одним пустим рядком, за яким через два пусті рядка слідують набори ключових слів, для кожного фрагменту — свої ключові слова в окремому рядку, розділені одним або декількома пробілами ( ключове слово не містить пробілів). Необхідно побудувати довідник частот появи  ключових слів в фрагментах тексту в наступному вигляді: для кожного фрагменту  вказується його номер в порядку слідування в файлі, за яким йде список його ключових слів з вказанням частот їх появи в порядку зменшення.

  1. Розробіть базовий клас TextFragment для роботи з фрагментом тексту, забезпечте необхідний набір конструкторів, операції додавання та видалення набору символів в заданій позиції.
  2. Розробіть похідний клас TextFragmentWithKeyWords для роботи з фрагментом тексту з метою пошуку в ньому заданих в цьому класі ключових слів. Забезпечте необхідний набір конструкторів, операції додавання і видалення ключових слів, а також операцію визначення частоти появи кожного ключового слова в фрагменті.
  3. Створіть клас-контейнер об’єктів класу TextFragmentWithKeyWords та проніціалізуйте його елементи  даними із файлу.
  4. Застосуйте операції класу TextFragmentWithKeyWords для побудови потрібного в задачі довідника.
  5. Забезпечте виведення результатів на екран в наступному вигляді:

номер фрагменту

список ключових слів у порядку зменшення частоти (слова з нульовою частотою не виводяться).

Бази даних

Опис предметної області

Ви працюєте в компанії, яка займається продажем запасних частин для автомобілів. Вашою задачею є слідкування за фінансовою стороною роботи компанії.

Основна частина діяльності, що знаходиться в Вашому веденні, пов’язана з роботою з постачальниками. Компанія має певний набір постачальників, для кожного з яких відома назва фірми постачальника, адреса і телефон. У цих постачальників Ви придбаєте деталі. Кожна деталь наряду з назвою характеризується артиклем і ціною (ціна постійна). Деякі з постачальників можуть поставляти однакові деталі (один і той самий артикул). Кожний факт покупки запчастин у постачальників фіксується в базі даних, до того ж обов’язковими для зберігання є дата покупки і кількість придбаних деталей.

Завдання

  1. Побудувати ER-діаграму предметної області (концептуальну модель бази даних).
  2. Побудувати по ER-діаграмі схему бази у вигляді набору відносин і зв’язків між ними.
  3. Для кожного відношення визначити: ключі (первинні та зовнішні), домени атрибутів, обов’язкові атрибути.
  4. Реалізувати на мові SQL наступні запити:
    1. Вивести без повторень найменування всіх фірм-постачальників, які поставляли деталь «Стойка» за поточний місяць. Відсортувати за найменуванням фірми-постачальника. Результативна таблиця: <найменування фірми, телефон>.
    2. Вивести без повторень найменування тих деталей, які жодного разу не поставлялися на протязі поточного року. Результативна таблиця: <найменування деталі>.
    3. Для кожного найменування деталі вивести сумарну кількість закуплених деталей в поточному місяці. В результативній виборці не повинно бути деталей, які в поточному місяці не закупалися. Результативна таблиця: < найменування деталі, сумарна кількість>.
  5. Дайте визначення ключа відношення. Які властивості повинен мати ключ? У чому різниця між первинним і потенціальним ключем? Що таке суперключ?
  6. Назвіть 4 основних SQL оператора мови DML.

Затверджено на засіданні Вченої ради факультету математики і інформатики, протокол №   1   від  07.02.2017  року

Декан факультету математики і інформатики                           Г.М.Жолткевич

Затверджено на засіданні приймальної комісії, протокол  № 2  від  10.04.2017 р.

Відповідальний секретар приймальної комісії                               О.О.Анощенк