En
algunos lenguajes, como por ejemplo en
lenguaje C no existen datos de tipos subrangos, ya que, el programador no puede definir tipos de datos
subrango en este lenguaje. No obstante,
otros lenguajes
de programación
sí permiten
definirlos y, por esta razón, es conveniente estudiarlos
brevemente.
Un dato de un tipo subrango es aquel que puede
tomar por valor uno de
los pertenecientes a un subrango definido por el programador. Por
ejemplo, suponiendo que el ordenador (utilizando dieciséis bits) puede representar el siguiente
conjunto de valores enteros:
{ -32768, -32767, ..., -1, 0, 1, ..., 32766, 32767 }
Los valores mínimo y máximo de ese rango son los
números -32768 y 32767, respectivamente. Pues bien, un
subrango es un subconjunto de valores de un rango.
Ejemplo 1: Del rango { -32768, ..., 0, ..., 32767 } posibles subrangos
son:
{ 1, 2, 3, 4, 5, 6 }
{ 0, 1, 2, ..., 8, 9, 10 }
{ -10, -9, -8, -7 }
{ -3, -2, -1, ..., 5, 6, 7 }
{ 1240, 1241, 1243, ..., 2999, 3000, 3001 }
Ejemplo 2: Sin embargo, al rango { -32768, ..., 0, ..., 32767 } no
pertenecen los siguientes subrangos:
{ 0, 1, 2, ... 34998, 34999, 35000 }
{ -50000, -49999, -49998, ..., 49998, 49999, 50000 }
Como se puede observar, el conjunto de valores de un subrango
también está comprendido entre un valor
mínimo y un valor máximo. Además, en
el subrango tienen que estar todos los elementos que están
en el rango entre ambos valores.
Ejemplo 3: Así pues, del rango { -32768, ..., 0, ..., 32767
}, los siguientes conjuntos no pueden ser considerados como subrangos:
{ 2, 4, 6, 8, 10 }
{ 1, 2, 4, 8, 16, 32 }
Todos los datos de tipos subrangos son ordinales, es decir,
sólo pueden tomar por valor elementos de subrangos finitos. |