Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2222222222222.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
521.07 Кб
Скачать
  1. Користувацькі та стандартні типи даних. Типізовані константи. Цілий, дійсний, булевий та символьний типи.

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

Прості стандартні типи даних: числові (цілочисельні, дійсні), символьний та логічний (булевий).

Цілочисельні типи (byte: 0..255; shortint: -128..127; word: 0..65535; integer (основний): -32768..32767; longint). Для збереження даних цілочисельного типу у пам’яті виділяється від 1 до 4 байт (н-д, для збереження цілих чисел типу byte виділяється 8 біт пам’яті, типу integer – 2 байти). Цілі числа бувають знаковими і беззнаковими. Старший біт несе інформацію про знак.

Дійсні числа (single, real, double, extended) можна записати у форматі з фіксованою крапкою (н-д, 5.04, -12.109), або у форматі з плаваючою крапкою (nE+2 означає множення числа n на 10 у степені +2, тобто nEm = n*10 m).

Символьний тип (char) – це множина символів кодової таблиці комп’ютера ASCII. Символьна стала – це символ, взятий у лапки. Н-д: ’a’, ’5’, ’%’.

Логічний тип (boolean) характеризується двома значеннями: true (істинність), false (хибність).

Усі стандартні типи (окрім дійсного) є впорядкованими, тобто для кожного даного визначені наступне і попереднє.

Крім стандартних типів даних існують користувацькі, які користувач сам визначає в розділі опису типів:

type <ім’я типу 1> = <опис типу 1>; ... <ім’я типу n> = <опис типу n>;

До нестандартних (користувацьких) типів належать перераховуваний, діапазонний та рядковий типи.

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

type <ім’я типу> = (<значення 1>, <значення 2>, ..., <значення n>);

Приклад: type week = (mon, tue, wed, the, fri, sat, sun);

colors = (red, green, blue, white, yellow);

Номер першого елемента списку завжди є 0. Дані перерахованого типу не можна вводити з клавіатури чи виводити. Даними перерахованого типу не можуть бути числові чи символьні значення.

Діапазонний тип – це звуження деякого базового упорядкованого типу. Його описують наступним чином: type <ім’я типу> = <значення 1> .. <значення 2>;

Приклад: type weekdays = mon..fri; months = 1..12;

Типізовані константи:

Окрім звичайних, є ще типізовані сталі. Вони дають змогу оголосити змінну і відразу надати їй значення:

const <ім’я сталої 1> : <тип 1> = <значення 1>; ...

<ім’я сталої n> : <тип n> = <значення n>;

На відміну від звичайних ,значення типізованих сталих у програмі можна змінювати. Приклади типізованих сталих:

const mysymbol : char = ’a’; n : integer = 5;

  1. Структурні типи даних. Масиви. Опис масивів. Обробка даних у масивах.

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

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

Формат: Туре <имя типа> = аггау[тип індексу] of <тип компонента>

Var <идентификатор> : <имя типа>;

Якщо в такій формі опису масиву заданий один індекс, масив називається одновимірним, якщо два індекси - двомірним, якщо n індексів, n-вимірним. Розмірність обмежена тільки об'ємом пам'яті.

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

Ініціалізація масиву полягає в присвоєнні кожному елементу масиву одного і того ж значення, відповідного базовому типу.

Для ініціалізації двомірного масиву звичайно використовується вкладений оператор for. Копіюванням масивів називається присвоєння значень всіх елементів одного масиву всім відповідним елементам іншого масиву. Копіювання можна виконати одним оператором присвоєння, наприклад А: = D; або за допомогою оператора for: Перестановка значень елементів масиву здійснюється за допомогою додаткової змінної того ж типу, що і базовий тип масиву.

В мові Pascal допускається опис багатовимірних масивів. Такий опис виконується за правилами: - двохвимірні масиви

1.) TYPE m1=array [1..10] of real;

Var m2: array [1..3]of ml;

Ml - це ім'я типу, елементи якого є одновимірні масиви (або вектори). М2 - це ім'я змінної, яка є масивом з 3-х елементів, кожен такий елемент є вектором. В результаті отримуємо об'єднання, яке називається матрицею.

2.) Var m2:array[1..3,1..10] of real; m2 - ім'я змінної, яка є двовимірним масивом дійсних чисел.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]