- •Лекція №2-3
- •План лекції
- •Поняття даного.
- •Поняття даного.
- •Типи даних.
- •Цілі типи даних
- •Дійсні типи даних
- •Логічні типи даних
- •Символьний тип (char)
- •Рядкові типи
- •Вказівний тип
- •Текстовий тип
- •Константи
- •Скалярні змінні
- •Арифметичні вирази
- •Класифікація операцій
- •Арифметичні операції:
- •Арифметичні операції
- •Операції відношення
- •Логічні операції (правила виконання)
- •Логічні операції
- •Порозрядні і зсувні операції
- •Рядкові операції
- •Операції над множинами
- •Операція узяття адреси
- •Стандартні числові функції
- •Арифметичні типи
- •Порядкові типи
Типи даних.
В універсальних мовах програмування, до яких відноситься Pascal, є певний набір стандартних типів даних, структурованих даних, а також передбачені засоби, які дозволяють програмісту визначити нові типи даних.
Множину типів мови Turbo Pascal можна розділити на дві групи:
-
стандартні (визначені) типи;
-
типи, визначені користувачем (користувальницькі типи).
Імена стандартних типів є визначеними ідентифікаторами (не плутати із зарезервованими словами!) і діють у будь-якому місці програми. У дійсності, вони описані в стандартному модулі System, що за замовчуванням підключається в список використовуваних модулів кожної програми й кожного користувальницького модуля, незалежно від того, зазначений він у розділі uses, чи ні. Також, як і інші визначені ідентифікатори, імена стандартних типів можуть бути перевизначені в програмі. Однак і після цього залишається можливість звертання до їхнього початкового змісту за допомогою ідентифікатора із вказівкою імені модуля System. Наприклад: System.Integer, System.Real.
Користувальницькі типи – це додаткові абстрактні (прості й структуровані) типи, характеристики яких програміст-користувач може визначати самостійно. Використання таких типів дозволяє програмістові ясніше й точніше описувати поставлене завдання, а компіляторові надає більше інформації для перевірки синтаксичних помилок і генерування більш ефективного машинного коду.
До стандартних типів Turbo Pascal відносять:
-
групу цілих типів (Shortint, Integer, Longint, Byte, Word);
-
групу дійсних типів (Single, Real, Double, Extended, Comp);
-
групу логічних типів (Boolean, ByteBool, WordBool, LongBool);
-
символьний тип (Char);
-
рядкові типи (String, Pchar);
-
вказівний тип (Pointer);
-
текстовий тип (Text).
До користувальницьких типів Turbo Pascal відносять:
-
Перераховуваний;
-
Діапазонний;
-
Вказівний (крім Pointer);
-
Структуровані типи;
-
Процедурний.
До структурованих типів відносяться:
-
Тип-масив (array);
-
Тип-множина (set;)
-
Тип-запис (record);
-
Файловий тип (file);
-
Об’єктний тип (object);
Символьний тип, а також цілі й логічні типи, перераховуваний та діапазонний типи відносять до, так званих, порядкових типів.
Порядкові типи характеризуються наступними чотирма властивостями.
-
Множина допустимих значень будь-якого порядкового типу є впорядкованою послідовністю, кожний елемент якої має свій порядковий номер. Порядковий номер є цілим числом. Перше значення будь-якого порядкового типу має порядковий номер 0, наступне значення має порядковий номер 1 і так далі. Виключення становлять порядкові типи Integer, Shortint і Longint. Порядковим номером значень цих типів є саме значення.
-
До будь-якого значення порядкового типу можна застосувати стандартну функцію Ord, що повертає порядковий номер цього значення.
-
До будь-якого значення порядкового типу можна застосувати стандартну функцію Pred, що повертає значення, яке передує цьому значенню. Якщо ця функція застосовується до першого допустимого значення будь-якого порядкового типу, крім логічних, то повертається порядковий номер останнього значення.
-
До будь-якого значення порядкового типу можна застосувати стандартну функцію Succ, що повертає значення, наступне за зазначеним. Якщо ця функція застосовується до останнього допустимого значення будь-якого порядкового типу, крім логічних, то повертається порядковий номер першого значення.
ВСІ дані в оперативній пам’яті ПК представлені у двійковій системі числення. (Ви повинні вміти переводити числа з десяткової системи числення і навпаки).