Перечисляемый типвс, 10/24/2010 - 21:32 — tech
В программу можно ввести и переменные какого-либо типа, не совпадающие ни с одним из стандартных типов. Такой тип задается перечислением значений при объявлении типа; любое из этих значений может принимать переменная данного типа, объявленная далее в программе. Общий вид описания перечисляемого типа: type nm = (word1, word2, …, wordN); var w: nm;
здесь nm – идентификатор типа (произвольный), word1, word2… - конкретные значения, которые может принимать переменная w, принадлежащая типу nm. Значения данного типа считаются упорядоченными, т.е. описание типа одновременно вводит упорядочение word1 < word2 < wordN. Порядковые значения отсчитываются с 0. К переменным типа перечисления можно применять функции ord, pred, succ и процедуры inc и dec. Ко всем переменным одного и того же скалярного типа применимы операции отношения: =, <>, <=, >=, <, >. Особенностью переменных типа перечисления является то, что их значения нельзя вводить с клавиатуры и выводить на экран (но можно использовать при работе с типизированными файлами). Пример 1. type color = (red, yellow, green, blue); Функция succ(x)По элементу x определяется та упорядоченная последовательность, которой принадлежит x, и выдается элемент, следующий за x в этой последовательности. Пример 2. Пусть задана последовательность букв в алфавитном порядке. Тогда succ(A) есть B; succ(L) есть M и т.д. Для примера 1 succ(red) есть yellow. Функция pred(x)По элементу x определяется последовательность, которой принадлежит x, и выдается предыдущий элемент этой последовательности. Пример 3. pred(F) есть E; pred(Z) есть Y и т.д. Функция ord(x)Выдается номер элемента x в последовательности. Пример 4. ord(red) равен 0, а ord(green) равен 2. |