
- •Питання до екзамену
- •1.Загальні поняття структур даних і алгоритмів
- •2.Інформація та її представлення в пам’яті
- •3.Зберігання інформації
- •5.Системи числення
- •6.Операції над структурами даних
- •7.Концепція типу даних
- •10.Поняття структури даних типу «масив»
- •11. Поняття структури даних типу «запис»
- •16.Алгебраїчний підхід до операції із структурами
- •17.Методи пошуку в масиві
- •30.Сортування за допомогою вибору
- •31.Сортування за допомогою простого обміну (бульбашкового сортування)
- •Сортування методом обміну
- •35.Метод простого злиття
- •60. Зберігання багатовимірних масивів
5.Системи числення
Систе́ма чи́слення (англ. number (numeration) system, notation) - сукупність способів і засобів запису чисел для проведення підрахунків.
Розрізняють такі типи систем числення:
позиційні
змішані
непозиційні
У
позиційних системах числення одна і та
ж цифра (числовий
знак)
у записі числа набуває різних значень
залежно від своєї позиції. Таким чином,
позиція цифри має вагу у числі. Здебільшого
вага кожної позиції кратна
деякому натуральному
числу
,
,
яке називаєтьсяосновою системи
числення.
Змішана
система числення є
узагальненням системи числення з
основою
і
її часто відносять до позиційних систем
числення. Основою змішаної системи є
послідовність чисел, що зростає,
і
кожне число
представляється
як лінійна
комбінація:
,
де на коефіцієнти
(цифри)
накладаються деякі обмеження.
Якщо
для
деякого
,
то змішана система збігається з
-основною
системою числення.
Найвідомішим
прикладом змішаної системи числення є
представлення часу у вигляді кількості
діб, годин, хвилин і секунд. При цьому
величина d
днів h годин m хвилин s секундвідповідає
значенню
секунд.
У непозиційних системах числення величина, яку позначає цифра, не залежить від позиції її у числі. При цьому система може накладати обмеження на позиції цифр, наприклад, щоб вони були розташовані по спаданню, чи згруповані за значенням. Проте це не є принциповою умовою для розуміння записаних такими системами чисел.
Типовим прикладом непозиційної системи числення є римська система числення, в якій у якості цифр використовуються латинські букви:
Римська цифра |
Десяткове значення |
I |
1 |
V |
5 |
X |
10 |
L |
50 |
C |
100 |
D |
500 |
M |
1000 |
6.Операції над структурами даних
Основні операції над структурами даних.
Є чотири структуровані типи: масиви, записи, множини і рядки. Будь – який з них характеризується множиною утворюючих цей тип елементів тобто змінна і константа структурованого типу завжди має декілька компонентів. Кожен компонент. В свою чергу, може належати структурованому типу, що дозволяє говорити про можливість вкладеності типів.
Масиви. Особливість масивів полягає в тому, що всі їх компоненти суть дані одного типу. Ці компоненти можна легко впорядкувати і забезпечити доступ до будь – якого з них простою вказівкою його порядкового номера.
Опис типу масива задаються наступним чином:
<имя типа> = ARRAY [<сп. инд. типов>] OF <тип>.
Записи. Запис – це структура даних, що складається з фіксованого числа компонентів, які називаються полями запису.Навідміну від масивів, компоненти (поля) запису можуть бути різного типу. Щоб можна було посилатись на той чи інший компонент запису, полям даються імена. Структура оголошення типу запису така:
<имя типа> = RECORD <сп. полей> END. Як і в масиві, значення змінних типу запису можна надавати іншим змінним того ж типу. Імена полів повинні бути унікальними в межах того запису, де вони оголошені, однак, якщо записи містять поля – записи, тобто вкладені одна в одну, імена можуть повторюватись на різних рівнях вкладеності.
Множини. Це набори однотипних логічно пов’язаних один з одним об’єктів. Кількість елементів, що входять в множину, може змінюватись в межах від 0 до 256. Саме непостійністю кількості своїх елементів множини відрізняються від масивів і записів.
Опис типу множина має вигляд:
<имя типа> = SET OF <баз. тип>. Для задання множини використовується так званий конструктор множини: список специфікацій елементів множини, які відокремлюються один від одного комами. Специфікаціями елементів можуть бути константи або вирази базового типу, а також – тип – діапазон того ж базового типу.
Операції над множинами:
- перетин множин;
- об’єднання;
- різниця;
- перевірка еквівалентності;
- перевірка включення однієї множини в іншу.
Рядки. Тип STRING в Турбо Паскалі широко використовується для обробки текстів. Цей тип подібний до одновимірного масиву символів ARRAY [0…N] OF CHAR, одак, кількість символів в рядку – змінній може змінюватись від 0 до N. Де N – максимальна кількість символів в рядку. Значення N визначається оголошенням типу STRING[N] і може бути будь – якою константою порядкового типу, але не більше 255. Рядок в Турбо Паскалі трактується як ланцюг символів. До будь – якого символа в рядку можна звернутись так само, як до елемента одновимірного масиву ARRAY [0…N] OF CHAR.
Процедури і функції, за допомогою яких реалізуються дії над рядками: copy, delete, insert (вставляє підрядок в рядок), length (повертає довжину рядка), str (перетворює число X будь – якого цілого типу в рядок символів ST), val (обернена до str).
Операції відношення =, <>, >, <, >=, <= виконуються надрядками посимвольно, зліва направо з урахуванням внутрішнього кодування символів.