Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие для учеников .doc
Скачиваний:
12
Добавлен:
18.12.2018
Размер:
2.27 Mб
Скачать

Решение

Ключевое слово ("лет", "год", или "года") в описании возраста человека зависит только от последней цифры в числе прожитых лет, исключением из общего правила является возраст от 11 до 14 лет.

program Example_64;

var k: 1..99;

begin

writeln('Введите возраст в годах');

readln(k);

write('мне ',k);

if k in [11..14] then write('лет')

else

case k mod 10 of

0, 5..9: write('лет');

1: write('год');

2..4: write('года');

end {case}

end.

Пример 4

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

Program Example_65;

var century, year, c: word;

begin

write('Введите номер года==>');

readln(year);

century:=(year-1) div 100+1;

{если номер года делится на сто, то это конец предыдущего века, а не начало нового, поэтому из номера года вычитается 1}

if century>=11 then

begin

write('x');

century:=century mod 10;

end; {if}

case century of

1..3: for c:=1 to century do

write ('I');

4: write(IV');

5..8:begin

write('V');

for c:=1 to century-5 do

write ('I')

end;

9:write('IX');

0, 10: write('X')

end; {case}

readln;

end.

§25. Перечисляемый тип данных

Этот тип данных получил название перечисляемого, потому что он задается в виде перечисления некоторых значений. Эти значения образуют упорядоченное множество и являются константами. Для объявления переменной список возможных значений, разделенных запятой, указывается в круглых скобках.

Например,

Var month:(january, february, march,

april, may,june, july, august,

september, october, november,

december);

Порядок элементов перечисляемого типа определяется порядком их следования в описании. Левый имеет минимальное значение (значение функции Ord для него равно 0), а правый − максимальное.

К переменным перечисляемого типа можно применять операции сравнения. Так, например, february<november.

Использование перечисляемого типа данных повышает читабельность программы. Однако в языке Паскаль нельзя вводить и выводить элементы перечисляемого типа. Этот недостаток легко преодолевается, так как всегда можно ввести число, являющееся порядковым номером элемента перечисляемого типа, и вывести на экран значение переменной перечисляемого типа, используя, например, оператор выбора Case.

§26. Описание переменных, констант и типов. Раздел описания констант

Константа − это величина, которая не изменяет своего значения в процессе выполнения программы. С константами мы уже встречались, так как в общем случае константой является любое целое или вещественное число, символ, идентификаторы false и true, а также идентификаторы, обозначающие значения переменных перечисляемого типа. Но константа может быть обозначена и именем. В этом случае она должна быть объявлена в разделе описания констант. Раздел описания констант начинается словом Const (от англ. constancy − постоянство).

Например,

Const N=25; K=38; D=(N+K) Div 2;

Letter='f'; M=5E15;

Здесь N, К, D − целочисленные константы, Letter − константа символьного типа, а М − константа вещественного типа. Следует отметить, что константа D принимает свое значение после вычисления выражения. В разделе описания констант можно ис­пользовать лишь некоторые стандартные функции, такие, как Abs, Chr, Pred, Succ, Odd, Ord.

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

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

Const N: Integer=15; ch: Char=#87;

Типизированные константы являются, собственно говоря, переменными. В частности, они могут изменять свое значение в процессе выполнения программы. От обычных переменных они отличаются лишь тем, что инициализируются при запуске программы.