Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porMaite Alcantara Modificado hace 9 años
1
Agosto 2010Programación I - Tipo de Datos1 Programación I Prof. Adjunto: Lic. Jorge O. Scucimarri Universidad Nacional de Luján Licenciatura en Sistemas de Información Departamento de Ciencias Básicas
2
Agosto 2010Programación I - Tipo de Datos2 Tipo de Datos El universo de valores con los que un programa trabaja, está dividido en colecciones organizadas llamadas tipos.
3
Agosto 2010Programación I - Tipo de Datos3 Los tipos de datos se caracterizan por: Un rango de valores posibles (dominio). Un conjunto de operaciones realizables sobre ese tipo. Su representación interna.
4
Agosto 2010Programación I - Tipo de Datos4 La declaración de tipos de datos presenta las siguientes ventajas: Mejores posibilidades de abstracción. Límites preestablecidos sobre el dominio de cada variable asociada a un elemento del mundo real. Detectar errores de operaciones. Determinar cómo ejecutar las operaciones.
5
Tipo de Datos Datos EstáticosDatos Dinámicos Tipos Puntero Tipos SimplesTipos Cadena (arrays) Tipos Estructurados Tipos Procedimiento (procesos) Ordinales Integer Boolean Char Enumerado Subrango No Ordinales Reales Array Registro Conjunto Archivo Agosto 20105Programación I - Tipo de Datos
6
Los tipos simples definen conjuntos de valores ordenados. Tipo Ordinal Predefinidos Definidos por el Usuario integer char boolean enumerados subrango Tipo Simple Tipo Ordinal Tipo Real Agosto 20106
7
Tipo Ordinal Predefinidos integer char boolean Tipo Simple Tipo Ordinal Se dice ordenado discretamente si para todos los elementos que son parte del tipo, salvo el primero y el ultimo, existe un elemento anterior y otro posterior. Agosto 20107
8
Tipo Ordinal Predefinidos Numéricos integer Tipo Simple Tipo Ordinal Agosto 20108
9
Programación I - Tipo de Datos9 Tipo Numérico Entero TipoRangoFormato byte integer longint shortint word 0.. 255 -32768.. 32767 -247483648.. 2147483647 -128.. 127 0.. 65535 8 bits sin signo 16 bits con signo 32 bits con signo 8 bits con signo 16 bits sin signo
10
Tipo Ordinal Predefinidos integer char boolean Tipo Simple Tipo Ordinal Agosto 201010
11
Tipo Ordinal Predefinidos Lógicos boolean Tipo Simple Tipo Ordinal Agosto 201011
12
Agosto 2010Programación I - Tipo de Datos12 Tipo Lógico o booleano Es un dato cuyo dominio está formado por dos valores posibles: Verdadero (true) Falso (false)
13
Tipo Ordinal Predefinidos integer char boolean Tipo Simple Tipo Ordinal Agosto 201013
14
Tipo Ordinal Predefinidos Caracter char Tipo Simple Tipo Ordinal Agosto 201014
15
Agosto 2010Programación I - Tipo de Datos15 Tipo Carácter (char) Es un dato cuyo dominio está formado por el conjunto de valores comprendido en el código ASCII, el cual permite establecer un orden de precedencia entre los mismos. Letras minúsculas: ‘a’, ‘b’,..., ‘z’ Letras mayúsculas: ‘A’, ‘B’,..., ‘Z’ Dígitos: ‘0’, ‘1’,..., ‘9’ Caracteres especiales: ‘!’, ‘@’,...
16
Agosto 2010Programación I - Tipo de Datos16 Tipo Carácter (char) Funciones sobre el tipo de dato carácter FunciónDescripciónArgumentoResultado Chr(x) Retorna el caracter ASCII que se corresponde con el valor de x. IntegerChar Ord(x) Retorna el valor ASCII del carácter que se indica en x. CharInteger
17
Agosto 2010Programación I - Tipo de Datos17 Tipo Ordenados Discretamente Funciones FunciónDescripciónArgumentoResultado Pred(x)Predecesor del elemento x. int, char o boolean Succ(x)Sucesor del elemento x. int, char o boolean Ord(x) Posición del elemento x dentro de los elementos del tipo int, char o booleanint
18
Agosto 2010Programación I - Tipo de Datos18 Tipo Ordenados Discretamente Ejemplos: Pred(‘H’)=‘G’ Succ(2)= 3 Succ(false)=true Pred(110)=109 Succ(’Z’)= ‘a’
19
Agosto 2010Programación I - Tipo de Datos19 Tipo Ordenados Discretamente Para los enteros: Succ(x) es x + 1 Pred(x) es x - 1 Ord(x) es x Para los booleanos: Ord(false) es 0 Ord(true) es 1
20
Tipo Simple Tipo Real Agosto 201020Programación I - Tipo de Datos
21
Agosto 2010Programación I - Tipo de Datos21 Tipo Numérico Real TipoRangoCifrasTamaño real single double extended comp 2.910 -39.. 1.710 38 1.510 -45.. 3.410 38 5.010 -324.. 1.710 308 1.910 -4932.. 1.110 4932 -2 63 + 1.. 2 63 – 1 11 – 12 7 – 8 15 – 16 19 – 20 6 bytes 4 bytes 8 bytes 10 bytes 8 bytes
22
Agosto 2010Programación I - Tipo de Datos22 Notación científica o de coma flotante Sea el número 0.0000000000356798 su representación utilizando notación científica es: 3.56798 x 10 -11 y su representación en una computadora: 0.356798-10 mantisaexponente
23
Agosto 2010Programación I - Tipo de Datos23 Notación científica o de coma flotante Sea el número 89412950000000000 su representación en una calculadora es: 8.941295 x 10 16 y su representación en una computadora:.894129517 mantisaexponente
24
Agosto 2010Programación I - Tipo de Datos24 Operaciones básicas OperaciónOperandosResultado (+) sumaEnteros y realesEntero o real (-) restaEnteros y realesEntero o real (*) multiplicaciónEnteros y realesEntero o real (/) divisiónRealesReal (div) división entera EnterosEntero (mod) móduloEnterosEntero
25
Agosto 2010Programación I - Tipo de Datos25 Tipo de Datos Definidos por el Usuario
26
Tipo Ordinal Definidos por el Usuario enumerados subrango Tipo Simple Tipo Ordinal Agosto 201026
27
Tipo Ordinal Definidos por el Usuario enumerados Tipo Simple Tipo Ordinal Agosto 201027
28
Agosto 2010Programación I - Tipo de Datos28 Tipo Enumerado Formato: type nombre_tipo_enum = (valor_1, valor_2,..., valor_n) Ejemplos: type colores = (rojo, azul, verde, blanco, negro); dias_semana = (domingo, lunes, martes, míercoles, jueves, sabado, domingo); varcolor: colores; dia: dias_semana;
29
Agosto 2010Programación I - Tipo de Datos29 Tipo Enumerado Ejemplos no válidos: type ciudad_1 = (LaPlata, Cordoba, Rosario) ciudad_2 = (Salta, Cordoba, Jujuy) letras = (‘a’, ‘b’, ‘c’); Los identificadores que detallan los valores posibles del tipo son constantes simbólicas. Estos identificadores deben ser distintos de los que están detallados en la misma sección. Por esta razón no pueden ser, por ejemplo, caracteres.
30
Agosto 2010Programación I - Tipo de Datos30 Tipo Enumerado Operaciones sobre datos enumerativos type colores = (azul, blanco, negro, verde); var color : colores Son válidas las sgtes. operaciones: color := azul; If (color = blanco) or (color = negro) then... For color := azul to verde do... No son válidas operaciones tales como: read(color); write(color);
31
Agosto 2010Programación I - Tipo de Datos31 Tipo Enumerado Las funciones predefinidas sobre datos enumerativos son las mismas que se describen para los datos de tipo ordinal.
32
Tipo Ordinal Definidos por el Usuario enumerados subrango Tipo Simple Tipo Ordinal Agosto 201032
33
Tipo Ordinal Definidos por el Usuario subrango Tipo Simple Tipo Ordinal Agosto 201033
34
Agosto 2010Programación I - Tipo de Datos34 Tipo Subrango type nombre = (límite inferior.. límite superior) Ejemplos: type IntervaloEnteros = -100..100; LetrasMin = ‘a’..’z’; varReducido : IntervaloEnteros; Letras : LetrasMin;
35
Agosto 2010Programación I - Tipo de Datos35 Tipo Subrango Un tipo de dato subrango es un tipo ordinal que consiste en una secuencia sucesiva contigua de valores de algún tipo ordinal (llamado tipo base del subrango). Las operaciones y las funciones predefinidas que se pueden realizar sobre un tipo de dato subrango son las mismas que las de su tipo base.
36
Tipo de Datos Datos EstáticosDatos Dinámicos Tipos Puntero Tipos SimplesTipos Cadena (arrays) Tipos Estructurados Tipos Procedimiento (procesos) Ordinales Integer Boolean Char Enumerado Subrango No Ordinales Reales Array Registro Conjunto Archivo Agosto 201036Programación I - Tipo de Datos
37
Tipo de Datos Datos Estáticos Tipos SimplesTipo Cadena Ordinales Integer Boolean Char Enumerado Subrango No Ordinales Reales Agosto 201037Programación I - Tipo de Datos
38
Agosto 2010Programación I - Tipo de Datos38 Tipo String (cadena) Una cadena de caracteres (string) es una serie de caracteres cuya longitud puede variar de 0 a 255 caracteres. El tipo de dato string permite almacenar información de texto. Ejemplo: var Mensaje : string;
39
Agosto 2010Programación I - Tipo de Datos39 Tipo String Operaciones entre cadenas: Asignación Comparación Concatenación
40
Agosto 2010Programación I - Tipo de Datos40 Tipo String Algunas funciones aplicables a cadenas: Concat (S1, S2,..., Sn) {retorna un string} Length (S) {retorna un integer} Copy (S, Posición, Cantidad) {retorna un string}
41
Tipo de Datos Datos EstáticosDatos Dinámicos Tipos Puntero Tipos SimplesTipos Cadena (arrays) Tipos Estructurados Tipos Procedimiento (procesos) Ordinales Integer Boolean Char Enumerado Subrango No Ordinales Reales Array Registro Conjunto Archivo Agosto 201041Programación I - Tipo de Datos
42
Tipo de Datos Datos Estáticos Tipos SimplesTipos Cadena (arrays) Tipos Estructurados Ordinales Integer Boolean Char Enumerado Subrango No Ordinales Reales Array Registro Conjunto Archivo Agosto 201042Programación I - Tipo de Datos
43
Agosto 2010Programación I - Tipo de Datos43 Tipo Conjunto Colección homogénea de elementos, sin repetición, sin relación de orden entre ellos e ilimitada. Desde el punto de vista informático, es una colección de datos simples, todos del mismo tipo. (En Pascal, el número máximo de elementos está acotado a 255)
44
Agosto 2010Programación I - Tipo de Datos44 Tipo Conjunto Un conjunto se declara de la forma: type conjunto = set of tipo_ordinal donde tipo ordinal es el tipo al cual pertenecen los elementos del conjunto y al que se lo denomina tipo base.
45
Agosto 2010Programación I - Tipo de Datos45 Tipo Conjunto Una vez definido el tipo conjunto, podemos definir una variable conjunto: var nombre_variable : conjunto También es posible declarar directamente una variable como un conjunto sin una declaración previa de tipo: var nombre_variable : set of tipo_ordinal
46
Agosto 2010Programación I - Tipo de Datos46 Tipo Conjunto Ejemplos: type dias = (domingo, lunes, martes, miercoles, jueves, viernes, sabado); Uno_al_100 = 1..100; Letras = set of char; Algunos_dias = set of dias; Algunos_numeros = set of uno_al_100;
47
Agosto 2010Programación I - Tipo de Datos47 Tipo Conjunto Construcción de un conjunto Program define_conjuntos; var letras : set of char; begin letras := [‘a’, ‘b’, ‘c’, ‘x’, ‘z’];... end.
48
Agosto 2010Programación I - Tipo de Datos48 Tipo Conjunto Operaciones sobre datos tipo conjunto OperaciónOperadorTipo de resultado Unión+Conjunto Intersección*Conjunto Diferencia-Conjunto PerteneciaInLógico
49
Agosto 2010Programación I - Tipo de Datos49 Tipo Conjunto Ejemplos type conjunto = set of char; var conj_1, conj_2, conj_3 : conjunto; conj_1 := [];{conjunto vacío} conj_2 := [‘a’]; conj_1 := [‘a’, ‘c’, ‘f’]; conj_3 := conj_1 * conj_2
50
Agosto 2010Programación I - Tipo de Datos50 Tipo Conjunto Operadores relacionales válidos: <> = = Si A y B son variables del mismo tipo conjunto: A<>B retorna true si los conjuntos son distintos A<=B retorna true si A está incluido en B A>=B retorna true si B está incluido en A A = B retorna true si A y B son iguales.
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.