Тип символів та інші перелічувані, Детальна інформація

Тип символів та інші перелічувані
Тип документу: Реферат
Сторінок: 3
Предмет: Комп`ютерні науки
Автор: Олексій
Розмір: 9.6
Скачувань: 922
Ідентифікатори списку після цього означення виступають сталими відповідного типу. Сталі не можуть повторюватися в означеннях того самого блока. Наприклад, якщо разом із типом сигналів світлофора означити ще тип кольорів райдуги, то використовувати імена red, yellow, green не можна.

Порядок сталих у списку задає операції ord, pred і succ, означені для всякого переліку. Наприклад, ord(Mon)=0, ord(Tue)=1 тощо, ord(Sun)=6, succ(Mon)=Tue, pred(Sat)=Fri. У відповідності зі значеннями ord означено й порівняння, наприклад, red
Вираз із сталими перелічуваних типів можна присвоювати однотипним із ними змінним.

Сталі й змінні перелічуваних типів, на відміну від базових типів, не можна вказувати у викликах процедур виведення та введення.

Будь-який перелічуваний тип, стандартний або тип-перелік, означений вище в програмі, може виступати базовим для типу-діапазону. Він задається виразом вигляду

стала1..стала2,

де стала1 <= стала2. Наприклад, ми можемо означити типи

type hundred=0..99; chesslet='A'..'H'; Workd=Mon..Fri

або змінні var stop : red..yellow; column : chesslet тощо.

Для діапазону означено ті самі операції, що для його базового типу.

Задачі

6.7. У розкладі рейсів літаків дні тижня позначаються номерами від 1 до 7. Припустимо, що в програмі дні тижня подаються типом Weekd. Написати вираз, що задає обчислення:

а) за номером дня тижня відповідного елемента типу Weekd;

б) за елементом типу Weekd номера дня тижня.

6.8. За понеділком іде вівторок тощо, а за неділею – понеділок. Написати функцію обчислення за днем тижня (типу Weekd) наступного за ним дня.

6.4. Оператор вибору варіантів

Повернемося до програми "найпростіший калькулятор" із прикладу 5.3. Там використовувалася змінна signop із значеннями 1, 2, 3 або 4, що позначали знаки операцій відповідно "+", "-", "*", "/". Її значення, отримане в результаті читання, порівнювалося з 1, 2, 3, 4 та виконувалися відповідні їм дії:

if signop=1 then first:=first+second else

if signop=2 then first:=first-second else

if signop=3 then first:=first*second else

{signop=4}

first:=first/second;

The online video editor trusted by teams to make professional video in minutes