1 / 50

Programación I

Universidad Nacional de Luján Licenciatura en Sistemas de Información Departamento de Ciencias Básicas. Programación I. Prof. Adjunto: Lic. Jorge O. Scucimarri. Tipo de Datos. El universo de valores con los que un programa trabaja, está dividido en colecciones organizadas llamadas tipos.

Download Presentation

Programación I

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Universidad Nacional de Luján Licenciatura en Sistemas de Información Departamento de Ciencias Básicas Programación I Prof. Adjunto: Lic. Jorge O. Scucimarri Programación I - Tipo de Datos

  2. Tipo de Datos El universo de valores con los que un programa trabaja, está dividido en colecciones organizadas llamadas tipos. Programación I - Tipo de Datos

  3. 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. Programación I - Tipo de Datos

  4. 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. Programación I - Tipo de Datos

  5. Tipo de Datos Datos Estáticos Datos Dinámicos Tipos Simples Tipos Cadena (arrays) Tipos Estructurados Tipos Procedimiento (procesos) • Ordinales • Integer • Boolean • Char • Enumerado • Subrango • No Ordinales • Reales Array Registro Conjunto Archivo Tipos Puntero Programación I - Tipo de Datos

  6. Tipo Simple Tipo Ordinal Tipo Real integer Predefinidos char boolean Tipo Ordinal Definidos por el Usuario enumerados subrango Los tipos simples definen conjuntos de valores ordenados.

  7. 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. integer Predefinidos char boolean Tipo Ordinal

  8. Tipo Simple Tipo Ordinal integer Predefinidos Numéricos Tipo Ordinal

  9. Tipo Numérico Entero Programación I - Tipo de Datos

  10. Tipo Simple Tipo Ordinal integer Predefinidos char boolean Tipo Ordinal

  11. Tipo Simple Tipo Ordinal Predefinidos Lógicos boolean Tipo Ordinal

  12. Tipo Lógico o booleano Es un dato cuyo dominio está formado por dos valores posibles: Verdadero (true) Falso (false) Programación I - Tipo de Datos

  13. Tipo Simple Tipo Ordinal integer Predefinidos char boolean Tipo Ordinal

  14. Tipo Simple Tipo Ordinal Predefinidos Caracter char Tipo Ordinal

  15. 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: ‘!’, ‘@’, ... Programación I - Tipo de Datos

  16. Tipo Carácter (char) Funciones sobre el tipo de dato carácter Programación I - Tipo de Datos

  17. Tipo Ordenados Discretamente Funciones Programación I - Tipo de Datos

  18. Tipo Ordenados Discretamente • Ejemplos: • Pred(‘H’) = ‘G’ • Succ(2) = 3 • Succ(false) = true • Pred(110) = 109 • Succ(’Z’) = ‘a’ Programación I - Tipo de Datos

  19. 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 Programación I - Tipo de Datos

  20. Tipo Simple Tipo Real Programación I - Tipo de Datos

  21. Tipo Numérico Real Programación I - Tipo de Datos

  22. 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 mantisa exponente Programación I - Tipo de Datos

  23. Notación científica o de coma flotante Sea el número 89412950000000000 su representación en una calculadora es: 8.941295 x 1016 y su representación en una computadora: .8941295 17 mantisa exponente Programación I - Tipo de Datos

  24. Operaciones básicas Programación I - Tipo de Datos

  25. Tipo de DatosDefinidos por el Usuario Programación I - Tipo de Datos

  26. Tipo Simple Tipo Ordinal Tipo Ordinal Definidos por el Usuario enumerados subrango

  27. Tipo Simple Tipo Ordinal Tipo Ordinal Definidos por el Usuario enumerados

  28. 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); var color : colores; dia : dias_semana; Programación I - Tipo de Datos

  29. Tipo Enumerado 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. Ejemplos no válidos: type ciudad_1 = (LaPlata, Cordoba, Rosario) ciudad_2 = (Salta, Cordoba, Jujuy) letras = (‘a’, ‘b’, ‘c’); Programación I - Tipo de Datos

  30. 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); Programación I - Tipo de Datos

  31. Tipo Enumerado Las funciones predefinidas sobre datos enumerativos son las mismas que se describen para los datos de tipo ordinal. Programación I - Tipo de Datos

  32. Tipo Simple Tipo Ordinal Tipo Ordinal Definidos por el Usuario enumerados subrango

  33. Tipo Simple Tipo Ordinal Tipo Ordinal Definidos por el Usuario subrango

  34. Tipo Subrango type nombre = (límite inferior.. límite superior) Ejemplos: type IntervaloEnteros = -100..100; LetrasMin = ‘a’..’z’; var Reducido : IntervaloEnteros; Letras : LetrasMin; Programación I - Tipo de Datos

  35. 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. Programación I - Tipo de Datos

  36. Tipo de Datos Datos Estáticos Datos Dinámicos Tipos Simples Tipos Cadena (arrays) Tipos Estructurados Tipos Procedimiento (procesos) • Ordinales • Integer • Boolean • Char • Enumerado • Subrango • No Ordinales • Reales Array Registro Conjunto Archivo Tipos Puntero Programación I - Tipo de Datos

  37. Tipo de Datos Datos Estáticos Tipos Simples Tipo Cadena • Ordinales • Integer • Boolean • Char • Enumerado • Subrango • No Ordinales • Reales Programación I - Tipo de Datos

  38. 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; Programación I - Tipo de Datos

  39. Tipo String • Operaciones entre cadenas: • Asignación • Comparación • Concatenación Programación I - Tipo de Datos

  40. 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} Programación I - Tipo de Datos

  41. Tipo de Datos Datos Estáticos Datos Dinámicos Tipos Simples Tipos Cadena (arrays) Tipos Estructurados Tipos Procedimiento (procesos) • Ordinales • Integer • Boolean • Char • Enumerado • Subrango • No Ordinales • Reales Array Registro Conjunto Archivo Tipos Puntero Programación I - Tipo de Datos

  42. Tipo de Datos Datos Estáticos Tipos Simples Tipos Cadena (arrays) Tipos Estructurados • Ordinales • Integer • Boolean • Char • Enumerado • Subrango • No Ordinales • Reales Array Registro Conjunto Archivo Programación I - Tipo de Datos

  43. 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) Programación I - Tipo de Datos

  44. 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. Programación I - Tipo de Datos

  45. 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 Programación I - Tipo de Datos

  46. 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; Programación I - Tipo de Datos

  47. Tipo Conjunto Construcción de un conjunto Program define_conjuntos; var letras : set of char; begin letras := [‘a’, ‘b’, ‘c’, ‘x’, ‘z’]; ... end. Programación I - Tipo de Datos

  48. Tipo Conjunto Operaciones sobre datos tipo conjunto Programación I - Tipo de Datos

  49. 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 Programación I - Tipo de Datos

  50. 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. Programación I - Tipo de Datos

More Related