Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основи програмування Паскаль.docx
Скачиваний:
51
Добавлен:
12.05.2015
Размер:
511.7 Кб
Скачать

2.2 Змінні й типи змінних

Змінниминазивають величини, значення якихможуть змінюватисяв процесі виконання програми. Кожна змінна задається своїм унікальним іменем, побудованим за правилами, зазначеним на початку глави. Максимально можлива довжина імені залежить від реалізації Паскаля, теоретично можна давати змінним імена аж до 63 символів довжиною, що чи ледь актуально – звичайно імена не довше 5-10 символів.

Оскільки будь-які дані в пам'яті комп'ютера зберігаються в числовій формі й двійковій системі числення, крім імені, змінної обов'язково слід привласнити й тип, що визначаєдіапазон значень, прийнятих змінної, іспосіб її обробкимашиною. Пояснимо сказане на прикладі. Як видне з Додатка 1, латинська більша буква 'A' має десятковий код 65, або 01000001 у двійковій виставі. Без додаткової інформації протипданих, що зберігаються в деякій комірці пам'яті, комп'ютеру було б неможливо розв'язати, що саме представляють із себе ці дані – число 65, код символу 'A' або щось ще. У будь-якій мові програмування, у тому числі й у Паскалі, існує стандартний набір типів, до яких може бути віднесена та або інша сукупність комірок пам'яті. Інформацію про типи даних Паскаля зручно звести в таблицю. Рядка цієї таблиці будуть упорядкований постаршинству типів, від самого "молодшого", що вимагає найменше число байт для представлення, і, відповідно найменший діапазон, що представляє, можливих значень, до самого "старшого" найбільший діапазон, що представляє, значень. У таблиці представлені не всі можливі, а лише основні типи даних Паскаля.

Ключове слово Паскаля

Назва й опис типу

Обсяг пам'яті, байт

Діапазон можливих значень

Boolean

Логічний: зберігає одну логічну змінну

1

true і false

Char

Символьний: зберігає код одного символу з набору Ascii-Кодів

1

від 0 до 255 включно (28=256)

Integer

Цілочисельний

2

±215

Word

Цілочисельний без знака

2

±216 - діапазон удвічі більше, тому що 16-й біт не зайнятий під знак числа

Longint

Довге ціле: для представлення більших цілочисельних значень

4

±231

Real

Дійсне число з точністю представлення до 11-12 знака в дробовій частині

6

~ 2.9*10-39 - 1.7*1038

Double

Дійсне число з точністю представлення до 15-16 знака в дробовій частині

8

~ 5*10-324 – 1.7*10308

String

Послідовність символів типу Char довжиною від 1 до 255

2-256 (дані рядка + 1 байт для зберігання її довжини)

Будь-які рядки тексту, що складаються із символів, що друкуються

Теоретично для запису змінної типу Boolean було б досить 1 біта, але мінімальна «адресуемая» одиниця пам'яті – 1 байт (див. Додаток 1). У цьому ж Додатку уточните, як саме обсяг пам'яті в байтах, виділюваної під змінну, впливає на діапазон, що представляються їй значень.

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

Зрозуміло, завдання правильного вибору типів даних цілком лягає на програміста. Наприклад, якщо деякий лічильник у Вашій програмі може ухвалювати Цілочисельні значення від 1 до 100000, неправильно було б описувати його як змінну типу Integer – адже 215=32768 і при досягненні лічильником цієї величини відбудеться скиданняйого значення, яке стане рівно -32768. Розумним у цьому випадку було б опис лічильника як змінному типу Longint.

Змінні описуються в програмі оператором наступного виду:

var Список1:Тип1;

Список2:Тип2;

. . .

Списокn:Типn;

Тут список– набір імен змінних, розділених комами (або одна змінна), атип– кожної з розглянутих вище типів даних. Наприклад, конструкція

var t,r:real;

i:integer;

описує 2 дійсних змінних з іменами tіr, а також целочисленную змінну з іменемi. Ключове словоvarможна й продублювати, але звичайно такої необхідності немає. Скороченняvarутворене від англійського слова "Variable" (змінна).