Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1° Año
Ingeniería en Sistemas de Información
* Datos Simples
Objetos que son manipulados por las diferentes sentencias o instrucciones de un programa, siendo la
nformación que procesa y brinda un programa.
ESTRUCTURA DE DATOS: Colección de elementos cuya asignación se caracteriza por las operaciones de
acceso que se usan para almacenar y recuperar los elementos individuales.
SIMPLES
Se asocian a
identificadores
únicos uno a uno
ENTEROS (INTEGER)
CARACTERES (CHAR)
STRING
LOGICOS (BOOL)
DEFINIDOS ENUMERADOS
POR
EL USUARIO SUBRANGO
STANDARD
Entero (integer): No pueden incluir comas, puntos ó espacios dentro de un número;
puede venir precedido de un signo (+) ó (-), si no aparece el signo se considera
positivo.
El valor máximo es ± 32767 (MAXINT). Se pueden sumar (+), restar (-), multiplicar
(*), dividir ( / resultado real, DIV resultado entero truncado, MOD resto entero).
Booleano o lógico (boolean): son valores que pueden ser ciertos o falsos.
No pueden ser leídos.
Se los puede trabajar con operadores lógicos: .AND. .OR. .NOT. y operadores
relacionales: = < >= > <= <>
String: permite procesar cadenas de carateres, con una longitud constante que al
momento de ser declarada puede variar entre 1 y 255. En el caso de longitud 1 es
equivalente a la declaración tipo Char. En el caso particular de Pascal, no se le
declara la longitud máxima permitiendo cargar hasta 255 caracteres.Las operaciones
válidas entre string son la asignación y la concatenación.
Ejemplo: var a, b, c: string[10];
a:= ´123´;
b:= ´ ´
c:= a + b por lo caul c contendría ´123 ´
Se pueden utilizar operadores relacionales para comparar string y los resultados sería:
- para el operador =, si las cadenas son de la misma longitud y contienen los mismos símbolos en el
mismo orden el resultado es verdadero, de lo contrario falso.
- para el operador <>, es lo opuesto a lo anterior.
- para operadores >, <, >=, <=: compara símbolo a símbolo según a su aparición el el código ASCII,
ejemplo si se compara ‘sala’ con ‘sola’ , se puede decir que ‘sola’ es mayor que ‘sala’ dado que la ‘o’
aparece después de la ‘a’.
Si es una cadena de caracteres la que deseamos exhibir, sin ser asignada a una variable, debe estar
encerrada entre apóstrofos: 'El costo es:' y puede estar formada por letras, dígitos y/o caracteres
especiales. Si dentro de ella se incluye un apóstrofo, éste debe escribirse dos veces para que el primero
no sea tomado como fin de la cadena.
Los cuatro tipos de datos (menos el string), tienen dos propiedades en común: están formados por
elementos indivisibles y están ordenados, por estas razones se los llama ESCALARES.
Excepto los REALES, los otros tres tipos tienen una propiedad adicional: cada valor tiene un predecesor
único excepto el primero y cada valor tiene un sucesor único excepto el último; estos tipos de datos se
los llama ORDINALES.
ORD: Devuelve mediante un valor entero la posición de un valor en su ordenación según la secuencia
de cotejo, teniendo en cuenta que la primera posición es el 0 y no el 1. Para los enteros
devuelve el mismo número y para los booleanos el 0 es Falso y el 1 es Verdadero.
PRED: Devuelve el único valor anterior al del dato ordinal. Se produce un error en tiempo de ejecución
si el parámetro es el primer valor.
SUCC: Devuelve el valor posterior al dato ordinal, produciéndose un error en tiempo de ejecución si el
parámetro es el último elemento del tipo de dato.
CHR: Toma una posición ordinal entera y devuelve el carácter de esa posición, se define sólo sobre
valores tipo CHAR.
Los tipos enumerados son ordinales por lo tanto se les puede aplicar las funciones de Pred, Succ y Ord.
Además pueden usarse en las etiquetas de las sentencias CASE, en los bucles FOR y WHILE.
Los identificadores del enumerado deben seguir las mismas reglas que otros identificadores: no pueden
comenzar con un número, ni con caracteres especiales, no pueden estar definidos en dos tipos enumerados
al mismo tiempo, no pueden ser leidos, se los debe ingresar como un número o una letra (codificados) y
luego traducirlos a su valor real y tampoco pueden ser exhibidos directamente.
TYPE numero = 1 . . 6;
variable:= dato;