Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тurbo Pascal 7+.doc
Скачиваний:
12
Добавлен:
24.12.2018
Размер:
10.09 Mб
Скачать

11.3. Использование пробела

  • Пробелы запрещены внутри имен и ключевых слов.

  • Пробелы обязательны между именами и ключевыми словами, если они находятся в одной строке.

  • В остальных случаях пробелы несущественны и могут ставиться произвольно.

  • Там, где допускается один пробел, допускается и сколько угодно пробелов.

  • Вместо нажатия на клавишу пробела можно нажимать на клавишу ввода.

Глава 12. Работа с разными типами данных Паскаля

12.1. Список типов

Каждая переменная величина в Паскале должна принадлежать какому-нибудь типу: Integer, Char, String и т. п. Вот список практически всех типов, многие из которых нам еще предстоит пройти. Здесь не учтены только так называемые процедурные типы, которые в этой книге освещаться не будут.

Простые типы

Числовые типы

Целочисленные типы

Byte

Shortlnt

Word

Integer

LongInt

Вещественные типы

Real

Single (при наличии или эмуляции матем. сопроцессора)

Double (при наличии или эмуляции матем. сопроцессора)

Extended (при наличии или эмуляции матем. сопроцессора)

Соmр (при наличии или эмуляции матем. сопроцессора)

Символьный тип

Char

Логический тип

Boolean

Перечислямый тип

Ограниченный тип (диапазон)

Сложные (структурированные) типы (строятся из простых)

Массивы array

Записи record

Множества set

Строки String

Файлы

Текстовые файлы

Text

Типизированные файлы

File of...

Бестиповые файлы

File

Объекты Object

Ссылки

Ссылки

Адресный тип

Pointer

Комментарии к списку типов

Переменная простого типа в каждый момент времени имеет своим значением что-то одно: одно число или один символ и т. п.

Переменная сложного типа состоит из многих элементов, каждый из которых принадлежит простому или сложному типу. Элемент сложного типа, в свою очередь, раскладывается на другие элементы и т. д. Разложив все до конца, мы получим, что переменная сложного типа состоит из элементов простых типов.

Аналогия. Простой тип. Вы хотите купить продукты. Вы идете по улице и видите дверь c надписью "Лавка". Вы открываете дверь и видите, что там продаются, например, баранки.

Структурированный тип. Вы хотите купить продукты. Вы видите дверь с надписью ''Супермаркет". Вы открываете дверь и видите, что там продается множество разных продуктов.

Ссылки. Вы хотите купить продукты Вы видите дверь с надписью "Адресное бюро". Вы открываете дверь, но внутри никаких продуктов нет. Вместо них вам дают адрес лавки или супермаркета.

12.2. Числовые типы

Целочисленные типы позволяют переменной принимать значения целых чисел согласно следующей таблице:

Тип

Диапазон значений

Сколько байт занимает одно значение

Byte

0 .. 255

1

Shortlnt

-128..127

1

Word

0..65535

2

Integer

-32768..32767

2

LongInt

-2147483648..2147483647

4

Зачем нужны Byte и Shortlnt, если есть Integer? .Они занимают меньше места в памяти. Если, например, ваша переменная по смыслу задачи обозначает минуты (то есть целое число в диапазоне от 0 до 60), то имеет смысл придать ей тип Byte.

Вещественные типы позволяют переменной принимать значения вещественных чисел согласно следующей таблице:

Тип

Примерный диапазон значений

Точность

(значащих цифр)

Сколько байт занимает

одно значение

Real

2.9xl0-39 - 1.7х1038

11-12

6

Single

l.5xl0-45 - 3.4х1038

7-8

4

Double

5xl0-324 - 1.7xl0308

15-16

8

Extended

З.4х10-4932 - l.lxl04932

19-20

10

Comp

Примерно от -1019 до 1019

8

Типы Single, Double, Extended и Comp могут потребовать для своей работы некоторой настройки Паскаля.

Следует помнить, что дробные числа (например, 1/3) компьютер хранит примерно в таком виде: 0,3333333333333! Вы знаете, что такое представление дробных чисел является приблизительным. Чтобы точно представить 1/3, компьютеру понадобилось бы бесконечное количество троек, но память компьютера ограничена. Ячейка под переменную типа Real позволяет хранить всего 11-12 таких троек. Эту приблизительность нужно иметь в виду, когда вы многократно выполняете арифметические действия над переменными вещественных типов. При определенном сочетании чисел и действий вы можете немедленно получить совершенно неправильный результат. Попробуйте, например, выполнить такую программу:

VAR a, b, y :Real;

BEGIN

а:=55555555555.1; b:=55555555555.0;

y:=a-b;

WriteLn (у :30:3)

END.

Вы обнаружите, что вместо результата 0.100 компьютер выдает результат 0.125.