Стандартні типи даних Pascal

Дані – це ті об’єкти, з якими оперує програма, вони повинні бути описані. Дані, значення яких не змінюється в процесі виконання програми, описуються в розділі констант, дані що змінюються дані – в розділі опису змінних.

Структура розділу опису констант.

Розділ опису іменованих констант починається з службового слова const, після якого йдуть елементи опису.

Структура розділу констант:

  • Const
    • ім’я_константи = значення;
    • ім’я_константи : тип_даних = значення;

Приклади:

  • Const
    • Pi = 3.14;
    • Arr: array [1..5] of integer = (1,3, 5,7, 9);

Структура розділу опису змінних.

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

Структура розділу змінних:

  • Var
    • ім’я_змінної_1 ,…, ім’я_змінної_r : тип_даних;
    • ім’я_змінної_k ,…, ім’я_змінної_n : тип_даних;

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

Основні типи даних.

Integer – цілий тип даних, операції над даними цілого типу.

Змінні цілого типу можуть приймати тільки цілі значення, що належать діапазону від -2147483648 … 2147483647. Для опису даних цілого типу в розділі опису змінних служить ключове слово – integer.

Приклад:

  • Var
    • x1, x2, x3 : integer;

На безлічі цілих чисел визначені тільки наступні операції, результат яких також є ціле число.

  • + – складання;
  • – віднімання;
  • * – множення;
  • div – цілочисельне ділення, при якому у результата відсікається дробна частина;
  • mod – залишок від ділення;
  • Trunc(x) – відкидання дробової частини числа x;
  • Round(x) – округлення числа х;
  • Abs(x) – модуль числа х;
  • Sqr(x) – зведення в квадрат числа х;
  • Power(x,y) – зведення числа х в ступінь у;

Real – дійсний тип даних, операції над даними дійсного типу.

Змінні дійсного типу можуть приймати значення, що належать до безлічі дійсних чисел: -1.8Е+308 … 1.8Е+308. Для опису даних дійсного типу в розділі опису змінних служить ключове слово – real.

Приклад:

  • Var
    • x1, x2, x3 : real;

У Pascal визначені наступні функції, що дають результат дійсного типу при речових значеннях аргументу:

  • Abs (x) – модуль числа;
  • Arctan (x) – арктангенс числа х (х – в радіанах);
  • Cos (x) – косінус числа х (х – в радіанах);
  • Exp (x) – експонента х;
  • Ln (x) – натуральний логарифм х;
  • Sin (x) – сінус числа х (х – в радіанах);
  • Sqr (x) – зведення в квадрат числа х;
  • Sqrt (х) – корінь квадратний із х;
  • Random (x) – випадкове число в діапазоні (0, x). Ініціалізація генератора випадкових чисел за допомогою команди: Randomize.

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

Char символьний тип даних, операції над даними символьного типу.

Pascal може обробляти не тільки числову інформацію, а й дані символьного типу. Останні можуть приймати значення з кінцевого впорядкованої множини символів, які для зручності зведені в таблицю – Unicode. Ця таблиця містить всього 256 символів, кожному з яких відповідає свій код. Для опису даних символьного типу в розділі опису змінних служить ключове слово – char.

Приклад:

  • Var
    • Key, Pointers, Switch : char;

Взаємно однозначна відповідність між символом і його номером в кодуванні Windows в процесі виконання програми встановлюється за допомогою наступних функцій:

  • Ord(s) – функція, повертає код символу s в кодуванні Windows.
  • Chr(n) – функція, повертає символ з кодом n в кодуванні Windows.

String – строковий тип даних, операції над даними строкового типу.

Для опису даних строкового типу в розділі опису змінних служить ключове слово – string. Рядки складаються з набору послідовно розташованих символів char і використовуються для представлення тексту.

Рядки можуть мати довільну довжину. До символів в рядку можна звертатися, використовуючи індекс: s[i], який позначає i-тий символ в рядку, нумерація починається з одиниці. Якщо індекс i виходить за межі довжини рядка, то генерується виняток.

Операція + для символів або рядків означає конкатенацію (злиття) строк. Наприклад: 'a' + 'b' = 'ab'. Також, як і для символів, якщо до рядка додати число, то число перетвориться на строку.

Приклад:

  • Var
    • s : string;
  • Begin
    • s := 15 + ' ';
      // s = '15 '

Над рядками визначені операції порівняння: <, >, <=, >=, =, <>. Порівняння рядків на нерівність здійснюється лексикографічно, тобто порівняння починається з першого символу рядка і по черзі до останнього. Якщо в процесі перевірки i-ті символи не збігаються, то перевірка завершується.

Boolean – логічний тип даних, операції над даними логічного типу.

Для опису даних логічного типу в розділі опису змінних служить ключове слово – boolean. Значення логічного типу займають 1 байт і приймають одне з двох значень, що задаються зумовленими константами True (істина) і False (брехня).

Результат виконання операцій порівняння над даними одного типу є логічна величина. У Pascal визначені наступні операції порівняння:

  • = – дорівнює;
  • >= – більше або дорівнює;
  • > – більше;
  • <= – менше або дорівнює;;
  • < – менше;
  • <> – не дорівнює.

Додатково, в Pascal визначена функція, яка повертає результат логічного типу:

  • Odd(x) – функція, повертає: True, х – непарне ціле число; False, х – парне ціле.