Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Відповіді на екзамен з ОП- 1.doc
Скачиваний:
5
Добавлен:
06.07.2019
Размер:
468.48 Кб
Скачать

#Define

define використовується для оголошення констант чи макровизначень. Наприклад:

    #define <macro> <replacement name>

 

 

#define FALSE 0

#define TRUE !FALSE

Також можна записувати невеликі функції використовуючи #define. Наприклад:

   #define max(A,B) ( (A) > (B) ? (A):(B))

Це означає, що де би непоставити рядок max(C ,D ) цей текст буде замінено таким рядком як оголошено зверху. Отхе, якщо в коді написати щось таке:

   x = max(q+r,s+t);

то після передпроцесора ми отримаємо, якщо на цей код можна було би подивитись:

   x = ( (q+r) > (r+s) ? (q+r) : (s+t));

Ще один приклад #define:

#define Deg_to_Rad(X) (X*M_PI/180.0)

/* перетворення градусів в радіани */

 

#define LEFT_SHIFT_8 <<8

#Include

Ця директива включає додаткові файли в код. У неї є 2 форми:

#include <file> або #include ``file''

<file> вказує компілятору де знаходяться системні файли, а також назву цих файлів. UNIX-системи зберігають файли у директорії usr include .

``file'' виконує те саме, що і вищеописаний, але використовується для модулів написаних вручну (так прийнято для підвищення читабельності коду).

21. стр.184-187 (Шпак)

Void - порожній тип, який зазначає,що функція не повертає значення.

якщо у функції зазначений інший тип (int, float,double,char),

то підпрограма повинна повертати значення за допомогою функції return.

Оператор return завершують роботу функцій, в якій він виконується.

Виконання оператора return в середині main викликає завершення

всієї програми. Вираз після return задає значення, яке поверне

функція.

НЕТИПІЗОВАНІ ВКАЗІВНИКИ

void *pv;

якщо вказівник оголошено як нетипізований, то він сумісний зі

всіма вказівниками програми та адресами всіх об"єктів

(вказівнику pv можна присвоїти адресу змінної цілого, дійсного

або будь-якого іншого типу).

22. Процедури - це так званні функції, які не повертають результату.

Процедура призначена для обчислення будь-якого алгоритму і не повертає жодного результату. Оголошується void.

тип назва (параметри)

{тіло функції}...

23. Звертанню функції має передувати її опис. Прототип функції відтворює рядок її заголовка і закінчується “;»

Прототип функції треба вказувати перед першим звертанням до функції(найчастіше всі прототипи записують на початку програми).

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

ПРОТОТИПИ БІБЛІОТЕЧНИХ ФУНКЦІЙ

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

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

#include <iostream.h>

24. стр.112-113 (Шпак)

25. Файл - іменована сукупність даних, розташованих на зовнішньому носії.

Тип FILE- ...

стр.314-316 (Шпак)

26. стр.318-319 (Шпак)

27.

31. База даних (БД) — впорядкований набір логічно взаємопов'язаних даних, що використовується спільно, та призначений для задоволення інформаційних потреб користувачів. У технічному розумінні включно й система керування БД.

Головним завданням БД є гарантоване збереження значних обсягів інформації (т.зв. записи даних) та надання доступу до неї користувачеві або ж прикладній програмі. Таким чином БД складається з двох частин  : збереженої інформації та системи управління нею. З метою забезпечення ефективності доступу записи даних організовують як множинуфактів (елемент даних).

Структуровані БД використовують структури даних, тобто структурований опис типу фактів за допомогою схеми даних, більш відомої як модель даних. Модель даних описує об'єкти та взаємовідносини між ними. Існує декілька моделей (чи типів) баз даних, основні: плоска, ієрархічна, мережна та реляційна. Приблизно з 2000 року більше половини БД використовують реляційну модель.

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

[ред.]Характеристика БД

Часто зустрічається характеристика БД на основі певних параметрів або необхідних вимог, наприклад:

значна кількість даних

незалежність даних

відкритий доступ до даних

підтримка транзакцій з гарантією відповідних властивостей

гарантована відсутність збоїв

одночасна робота з багатьма користувачами

З подальшим розвитком БД змінюються й ці вимоги та додаються нові, тому одностайності щодо повноти цієї характеристики немає.

єрархічна модель бази даних складається з об'єктів з покажчиками від батьківських об'єктів до нащадків, з'єднуючи разом зв'язану інформацію. Ієрархічні бази даних можуть бути представлені як дерево, що полягає з об'єктів різних рівнів. Верхній рівень займає один об'єкт, другий — об'єкти другого рівня і т.д. Між об'єктами існують зв'язку, кожний об'єкт може містити в собі кілька об'єктів більш низького рівня. Такі об'єкти перебувають відносно предка (об'єкт більш близький до кореня) до нащадка (об'єкт більш низького рівня), при цьому можливо, коли об'єкт-предок не має нащадків або має їх декілька, тоді як в об'єкта-нащадка обов'язково тільки один предок. Об'єкти, що мають загального предка, називаються близнюками.

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

Реляційна база даних — база даних, заснована на реляційній моделі даних. Термін «реляційний» означає, що теорія заснована на математичнім понятті відношення (relation). У якості неформального синоніма терміну «відношення» частіше зустрічається слово таблиця. Необхідно пам'ятати, що «таблиця» є поняття нестроге й неформальне й часто означає не «відношення» як абстрактне поняття, а візуальна вистава відносини на папері або екрані. Некоректне й нестроге використання терміна «таблиця» замість терміна «відношення» нерідке приводить до недорозуміння. Найбільш часта помилка полягає в міркуваннях про те, що РМД має справу з «плоскими», або «двовимірними» таблицями, тоді як такими можуть бути тільки візуальні представлення таблиць. Відносини ж є абстракціями, і не можуть бути ні «плоскими», ні «неплоскими».

Об'єктно-орієнтована база даних — база даних, у якій дані оформлені у вигляді моделей об'єктів, що включають прикладні програми, які управляються зовнішніми подіями. Результатом сполучення можливостей (особливостей) баз даних і можливостей об'єктно-орієнтованих мов програмування є Об'єктно-орієнтовані системи керування базами даних (ООСКБД). ООСКБД дозволяє працювати з об'єктами баз даних також, як з об'єктами в програмуванні на ООЯП. ООСКБД розширює мови програмування, прозоро вводячи довгочасні дані, керування паралелізмом, відновлення даних, асоційовані запити й інші можливості.

Так само до основних моделям даним ставляться: Багатомірні, Об'єктні, Об'єктно-реляційні і т. д.

32. Комп’ютерні мережі – це 2 і більше Пк з’єднаних між собою з метою швидкого обміну даних та спільного використання ресурсів.

Для реалізації мережі необхідні компоненти 2 типів:

  • АЗ

  • ПЗ

Апаратна частина забезпечує фізичне зєднання ПК. Зєднання може відбуватися за допомогою кабелю та мережевих адаптерів, або кабелю під’єднаного до портів, телефонії чи оптоволоконної лінії чи модему.

ПЗ мережі – це мережева ОС, протоколи і прикладні програми. Компютерні мережі поділяються на:

  • Локальні;

  • Регіональні;

  • Глобальні.

37.

Комп'ютерний вірус (англ. computer virus) — комп'ютерна програма, яка має здатність до прихованого саморозмноження. Одночасно зі створенням власних копій віруси можуть завдавати шкоди: знищувати, пошкоджувати, викрадати дані, знижувати або й зовсім унеможливлювати подальшу працездатність операційної системи комп'ютера. Розрізняють файлові, завантажувальні та макро-віруси. Можливі також комбінації цих типів. Нині відомі десятки тисяч комп'ютерних вірусів, які поширюються через мережу Інтернет по всьому світу.

38. Класифікація вірусів

1, Завантажувальні віруси — Заражають завантажувальні сектори жорстких дисків (вінчестерів) і дискет.

2,Файлові віруси — Заражають файли. Ця група в свою чергу поділяється на віруси, які заражають виконувальні файли (сом-, ехе-віруси); файли даних (макровіруси); віруси — супутники, які використовують імена інших програм; віруси сімейства dir, які використовують інформацію про файлову структуру. Причому два останніх типи зовсім не модифікують файли на диску.

3,Завантажувально-файлові віруси — спроможні вражати, як код завантажувальних секторів, так і код файла. Віруси поділяються на резидентні та нерезидентні. Перші при отриманні керування, завантажуються в пам'ять і можуть діяти на відміну від нерезидентних не тільки під час роботи зараженого файла.

4,Stealth-віруси — фальсифікують інформацію, читаючи з диску так, що активна програма отримує невірні дані. Вірус перехоплює вектор призупинення INT 13h і поставляє зчитувальній програмі іншу інформацію, яка показує, що на диску «все в нормі». Ця технологія використовується як в файлових, так і в завантажувальних вірусах.

5,Ретровіруси — звичайні файлові віруси, котрі заражають антивірусні програми, знищують їх або роблять їх непрацездатними. Тому практично всі антивіруси, в першу чергу перевіряють свій розмір і контрольну суму файлів.

6,Multipartition—віруси — можуть вражати одночасно exe, com, boot-сектор, mother boot record, FAT і директорії. Якщо вони до того ж володіють поліморфними властивостями і елементами невидимості, то стає зрозуміло, що такі віруси — одні з найнебезпечніших.

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

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

Відомі випадки, коли віруси блокували роботу організацій і підприємств. Більше того, кілька років тому був зафіксований випадок, коли комп'ютерний вірус став причиною загибелі людини - в одному з госпіталів Нідерландів пацієнт отримав летальну дозу морфію з тієї причини, що комп'ютер був заражений вірусом і видавав невірну інформацію.

З усього вищесказаного можна сміливо зробити висновок, що необхідність захисту від комп'ютерних вірусів на даний момент стоїть на першому місці. Якщо правильно вибирати антивірусне програмне забезпечення та регулярно оновлювати його, можна уникнути зараження вірусом і відповідно всіх його наслідків.

39.