Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
delphi / песни о паскале.pdf
Скачиваний:
63
Добавлен:
26.03.2016
Размер:
5.16 Mб
Скачать

Глава 9 Переменные: продолжение знакомства

Типизированные константы

Всем данным в программе свойственен какой-либо тип. Это может быть строка, число или другой тип данных, с которыми вы скоро познакомитесь. То же касается и констант, например:

const Pele =

’Эдсон Арантес ду Насименту’;

ß

это

строка (string)

Number

= 12;

ß

это

число

 

 

 

 

 

Здесь тип сам собой определяется тем значением, что дано константе.

Но существует и другая разновидность констант — типизированные константы, которые объявляются с явным указанием типа:

const Pele :

string = ’Эдсон Арантес ду Насименту’;

ß это

строка (string)

Number

: integer = 12;

ß это

число (integer)

 

 

 

 

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

ВDelphi разрешено инициализировать переменные при объявлении:

var Pele : string = ’Эдсон Арантес ду Насименту’;

Но этот способ не совместим с Borland Pascal, и в данной книге не применяется.

Итоги

В одном операторе можно объявить несколько переменных одного типа.

Процедура Writeln способна напечатать в одной строке несколько параметров. Параметры в списке разделяются запятыми.

Операция присваивания «:=» помещает в переменную данные, представленные константой, переменной, или их комбинацией – выражением.

Конкатенация – это объединение нескольких строк в одну.

Для инициализации переменной необходимо либо ввести в неё данные процедурой Readln, либо заполнить оператором присваивания.

Извлечение данных из переменных, которые не были инициализированы, бессмысленно и нередко вызывает крушение программы.

67

Глава 9 Переменные: продолжение знакомства

А слабо?

А) Что напечатает следующая программа?

const Pele = ’Эдсон Арантес ду Насименту’; begin

Writeln(’Pele = ’ + Pele); Readln; end.

Б) А эта программа что напечатает?

var A, B : string;

 

begin

 

A:=’123’; B:=’456’;

 

Writeln(’A+B= ’ + A + B);

Readln;

end.

 

В) Является ли следующий оператор оператором присваивания?

const Pele = ’Эдсон Арантес ду Насименту’;

Г) Пусть ваша программа запросит у пользователя его адрес, а именно: город, улицу, номер дома и номер квартиры. А затем напечатает адрес одной строкой в таком виде:

Город: ГГГ Улица: УУУ Дом: ДДД Квартира: ККК

Сделайте два варианта программы: один — с печатью нескольких параметров оператором Writeln, другой — с объединением строк.

Д) Какие из следующих операторов забракует компилятор?

const

Pele = ’Эдсон Арантес ду Насименту’;

ABBA : string = ’Музыкальный шедевр из Швеции’;

var

Moscow : string;

begin

Pele := ’Лучший футболист мира’;

ABBA := ’Распевают частушки’;

Moscow:= ’Столица олимпиады’;

end.

68

Соседние файлы в папке delphi