
- •Лекція 1. Мова програмування turbo-pascal. Трансляція. Види трансляції: інтерпретатор та компілятор. Компілятор turbo-pascal. Характеристика даних у pascal. Системи програмування.
- •Поняття величини.
- •Дані у мові Pascal.
- •Цілий тип.
- •Логічний тип.
- •Опис величин.
- •Опис зміних.
- •Опис констант.
- •Опис типів змінних.
Дані у мові Pascal.
Pascal є статичною (типизованою) мовою. Це означає, що тип змінної визначається при її описуванні і не може бути змінений при виконанні програми. Величина може брати участь тільки в операціях, які допустимі для зазначеного типу.
Pascal має розвинену систему типів. На основі невеликої кількості числа стандартних типів програміст може конструювати дані довільної структури і складності, однозначно відтворюючи інформаційну природу задачі. На рисунку 3.1 проведена схема відповідності типів величин у мові TurboPascal.
рис.
3.1. Схема типів величин мови TurboPascal
Розглянемо спочатку властивості стандартних скалярних типів даних.
Цілий тип.
Таблиця 3.1.Характеристика цілоготипу даних
-
Позначення у мові Pascal.
Діапазон значень
Розмір пам’яті
shortint
-128 .. 127
1 байт
integer
-32768 .. 32767
2 байта
longint
-2147483648 .. 2147483647
4 байта
byte
0 .. 255
1 байт
word
0 .. 65535
2 байта
Значення цілих типів можуть зображатися двома способами: в десятковому вигляді і в системі зчислення з основою шістнадцять. В останньому випадку перед зображенням числа ставиться символ $.Наприклад: $B80, $F1. В такому вигляді величини можна вводити з клавіатури та зображувати в тексті програми. В процесі виконання програми при ці числа переводяться в десяткове подання.
Дійсний тип.
Основною характеристикою цього типу є кількість цифр у мантисі та порядок числа, які визначають точність числа.
Таблиця 3.2. .Характеристика дійсноготипу даних
-
Позначення типу у мові Pascal
діапазон значень
кількість цифр мантиси
розмір пам’яті
real
2.9e-39.. 1.7e38
11-12
6 байт
single
1.5 e-45 .. 3.4e38
7-8
4 байт
double
5.0e-324 .. 1.1e308
15-16
8 байт
extended
3.4e-4932 .. 1.1e4932
19-20
10 байт
comp
-9.2e+18 .. 9.2e+18
-
8 байт
Тип comp являє собою цілий тип, але з дуже великим значенням (-263+1;263-1). Тому що такі числа дуже важко зобразити на екрані, використовується степінь десятки.
Символьний тип.
Стандартний символьний тип Char визначає повний набір символів з таблиці ASCII. Якщо символьне значення має графічне подання, то воно зображуються відповідним знаком, який міститься в апострофах: ‘,’, ‘g’, ‘7’, ‘&’, ‘’’’. Якщо символ не має графічного подання, то можна використати таку форму запису: знак діез (решітка) ‘#’ та цілого коду символу (від 0 до 255): #10, #$A. Крім того, деякі керуючі символи можна подати в такій формі: ^C(C- умовне зображення керуючого символу). Наприклад: ^G - символ з кодом 7, ^[ - аналогічно до #$1B
Логічний тип.
Стандартний логічний тип Boolean є типом даних, що приймає значення True або False. Для цього типу значенню False відповідає 0, а True відповідає 1.
Увага! В другому розділі ми розібралися з поданням простих стандартних типів у памяті комютера та з операціями, які дозволені для цих типів.
Крім стандартних простих типів у мові TurboPascal існують ще два простих типи, які мають назву типів користувачів. Адже їх властивості задає користувач для своїх потреб у програмах.
Перелічувальний тип даних.
Перелічувальний тип визначається набором ідентифікаторів, з якими можуть співпадати значення параметру. Список ідентифікаторів указують при визначенні типу у дужках.
type <ім’я типу>=(<ідентифікатор1, ідентифікатор2, …, ідентифікаторN>);
Наприклад:
type color = (red, blue, yellow);
month = (jan, febr, march, apr, may, jne, jlay, og, sept, okt, nov, des);
Далі можна ім’я типу використовувати для опису величини, наприклад, записати
var c1,c2: color;
m1,m2,m3 : month;
Як і будь-який ідентифікатор, ідентифікатори перелічувального типу повинен бути зображений латинськими символами з можливим використанням цифр.
Перелічувальний тип є порядковим. Перший ідентифікатор приймає номер 0, другий – 1 і т.д. Логічний тип є частковим випадком перелічувального типу
type boolean = (false, true);
У програмі змінним перелічувального типу можна присвоювати значення ідентіфікаторів:
m1:=jan;
До перелічувального типу не можна використовувати оператори введення readта виведенняwrite.
Обмежений тип даних.
На будь-який порядковий тип даних можна накласти обмеження, визначивши підмножину значень величин, в яку входять всі значення вихідного типу. Тип – диапазон задається вказівкою мінімального та максимального значення, які розділені двома крапками:
type nom=12..34;
spring = march .. may;
Над величинами такого типу можна виконувати всі операції, які дозволені для базового типу (тип, на який посилаємося при заданні діапазону).