Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Tipos de datos. Constantes y variables, Apuntes de Informática

Asignatura: Fundamentos de informática, Profesor: Pedro Latorre, Carrera: Ingeniería de Tecnologías Industriales, Universidad: UniZar

Tipo: Apuntes

2012/2013

Subido el 23/01/2013

avavrm
avavrm 🇪🇸

4

(251)

58 documentos

1 / 61

Toggle sidebar

Documentos relacionados


Vista previa parcial del texto

¡Descarga Tipos de datos. Constantes y variables y más Apuntes en PDF de Informática solo en Docsity! Fundamentos de Informática Ingeniería en Tecnologías Industriales Curso 2010-11 Grado en Ingeniería en Tecnologías Industriales Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 2 Tipos de datos • Índice 1. Concepto de tipo de dato. Clasificación 2. Tipos de datos escalares 3. Tipos escalares numerables estándar: entero, carácter, booleano 4. El tipo real 5. Tipos escalares numerables definidos por enumeración 6. Subrangos de un tipo escalar Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 5 Tipos de datos  Propiedades de todo tipo de datos: – Un dominio de posibles valores. – Un modo común de representación de sus valores • Algorítmicamente (notación sintáctica) • Internamente (codificación) – Un conjunto de operadores asociados. • Un conjunto de propiedades comunes determina un tipo de dato Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 6 Tipos de datos Hay que declarar previamente el tipo de todo dato a usar en un programa: » Implícitamente (tipos predefinidos) » Explícitamente (declaraciones de tipos) Trabajar con datos, clasificados por tipos, aumenta la legibilidad y fiabilidad de los programas y facilita la detección de algunos errores de programación: * Detección de errores de incompatibilidad entre operadores y operandos. Lenguaje fuertemente tipado Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 7 Ejemplo: el tipo entero – Dominio de valores:[-MININT…0…MAXINT] – Representación • Interna 2 bytes, representación en binario en complemento a 2. • Externa:<entero>::=[+|-]<digito>{<digito>} – Conjunto de operadores: +,*, DIV, MOD, SQR Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 10 Tipos de dato Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 11 Tipos de datos • Dato constante – Un dato constante o, simplemente, una constante es un dato cuyo valor es inalterable durante toda la ejecución del algoritmo o programa. • Expresión explícita o simbólica Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 12 Tipos de dato • Forma explícita: – 1000 { Constante de tipo entero } – 3.1416 { Constante de tipo real que representa una aproximación al valor del número π } – ‘A’ { Constante de tipo carácter igual a la primera letra mayúscula. Los apóstrofes permiten distinguir esta constante del identificador A } – CIERTO { Constante de tipo booleano. No cabe confusión con un identificador ya que cierto se considera una palabra clave o reservada dentro de la notación algorítmica } Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 15 Datos variables – Un dato variable o, simplemente, una variable es un dato cuyo valor puede cambiar durante la ejecución del algoritmo o programa. – Las variables que se declaran en un algoritmo tienen asociado un nombre, un tipo de dato y un valor. – El valor de una variable puede ir cambiando a lo largo de la ejecución del algoritmo, pero siempre dentro del dominio de valores de su tipo de dato asociado. Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 16 Datos variables • Al declarar una variable se le asocia un identificador como nombre simbólico. Este será utilizado para hacer referencia a la variable cuando se opere con ella. • El tipo de dato y el identificador de una variable son dos atributos permanentes asociados a ella, mientras que su valor es un atributo variable. • Otro atributo de una variable es su ámbito que se define como la parte del algoritmo en la que dicha variable es visible y, por lo tanto, se puede trabajar con ella. Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 17 Datos variables • Debemos declarar todas las variables utilizadas en cada algoritmo. Para declarar una variable basta asociarle un nombre (identificador) y especificar su tipo de dato asociado: algoritmo ejemplo; variables índice, contador: entero; medida: real; c1, c2, c3, c4: carácter; i, j, k: entero; ... Finalizador de cada una de las listas en las que se declaran variables del mismo tipo. Las variables declaradas dentro de una lista se separan mediante comas, “,”. Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 20 El tipo entero Dominio de valores Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 21 El tipo entero Representación algorítmica externa Notación arábiga, precedidos o no por espacios en blanco y por un signo “+” o “-”. El signo se puede omitir si el entero es positivo constanteEntera ::= {" "} [+|-] <digito> {<digito>} Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 22 Representación algorítmica interna El número total de datos representados depende del número de bits dedicados a representar datos de tipo entero. Así, con N bits es posible representar 2N datos diferentes. código binario complemento a 2: Para N=16 bits, se pueden representar 2^16=65.536 datos enteros: {-32.768 … -2 -1 0 1 2 … 32.767} Para N=32 bits, se pueden representar 2^32=4.294.967.296 datos enteros: {-2.147.483.648 … -2 -1 0 1 2 … 2.147.483.647} El tipo entero Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 25 El tipo entero Operadores predefinidos (II) • Ciertas funciones predefinidas: absoluto(expresión_entera) cuadrado(expresión_entera) predecesor(expresión_entera) sucesor(expresión_entera) Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 26 Tipos de datos variables Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 27 El tipo booleano Dominio de valores • Cierto, falso Representación algorítmica • Las dos constantes del tipo booleano se hacen mediante los identificadores falso y cierto que tienen la consideración de palabras reservadas en nuestra notación algorítmica. • Los datos de tipo booleano se pueden codificar internamente con un solo bit (por ejemplo, falso=0, cierto=1). Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 30 El tipo booleano • La importancia que estas expresiones tienen en programación radica en su utilización para describir las condiciones de las que depende el curso de ejecución de un algoritmo. • Estas condiciones desempeñan un papel esencial en los esquemas de composición condicional e iterativa de acciones que se presentarán más adelante 1 0 Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 31 El tipo booleano Supóngase que en un algoritmo han sido declaradas las siguientes variables: variables a, b, c: entero; condicion1, condicion2, condicion3: booleano; Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 32 El tipo booleano Supóngase que en un algoritmo han sido declaradas las siguientes variables: variables a, b, c: entero; condicion1, condicion2, condicion3: booleano; Asignar a la variable condicion1 un valor lógico cierto si y sólo si los valores de las variables a, b y c son todos iguales: condicion1 := (a=b) (b=c); Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 35 El tipo booleano 1 0 Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 36 Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 37 El tipo carácter Dominio de valores Comprende como mínimo: Los caracteres alfabéticos: ‘A’, ‘B’,…,’Z’ Los caracteres numéricos o dígitos: ‘0’,’1’,…,’9’ Otros caracteres imprescindibles: ‘+’,’-’,’ ‘,’.’, etc Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 40 El tipo carácter Pascal Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 41 El tipo carácter Operaciones predefinidas (I) – Las operaciones específicas propias de los datos escalares, es decir, las operaciones de relación (=, ≠, <, ≤, > y ≥) y las funciones sucesor y predecesor – La función ordinal que, aplicada a un carácter, devuelve el valor entero que corresponde a su código numérico asociado. En nuestro caso (código ASCII) – La función chr es la inversa de la función ordinal. Aplicada al código numérico asociado a un carácter devuelve como resultado el propio carácter Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 42 El tipo carácter Operaciones predefinidas (I) – Gracias a las funciones ordinal y chr, podemos obviar los detalles del sistema aplicado para la codificación interna de los datos de tipo carácter: chr(ordinal(‘A’)+9) { Calcula el 10º carácter del alfabeto, la ‘J’ } ordinal(‘J’)-ordinal(‘A’)+1 { Calcula la posición en el alfabeto de la ‘J’ } ordinal(‘7’)-ordinal(‘0’) { Calcula el valor numérico del dígito ‘7’ } Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 45 El tipo carácter Conversión de datos de tipo carácter a datos de tipo entero algoritmo valorEnteroDeDígito (E d:carácter; S suValor:entero) { Pre: --- Post: Si el valor de “d” es un dígito (‘0’..‘9’) el valor de “suValor” es el entero que representa “d”; en caso contrario, “suValor” queda indefinido } principio si (d≥‘0’) Y (d≤‘9’) entonces suValor:= ordinal(d)-ordinal(‘0’); finSi Fin. Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 46 Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 47 El tipo real • Es un tipo escalar no numerable, por lo que presenta algunas particularidades respecto de los tipos de datos presentados hasta ahora • Dominio de valores (I) • El dominio de sus posibles valores es función de la forma de representación interna del tipo real. Esta suele ser de tipo mantisa-exponente. valorReal = mantisa×Bexponente • La base B suele ser 2 ó una potencia de 2. En función del espacio asignado para almacenar mantisa y exponente (por ejemplo 4, 8 ó 16 bytes en total) se podrá representar un intervalo más o menos amplio de números reales, centrado alrededor del valor real 0.0 Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 50 Representación algorítmica externa Notación arábiga o en notación científica, eventualmente precedidos por un signo ‘+’ o ‘-’ : 456.3 -3156.77 +456.5E-7 0.0 constanteReal ::= { " " } [+|-] <digito> {<digito>} "." {<digito>} [E[+|-] <digito> {<digito>}] El tipo real Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 51 Pascal El tipo real Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 52 El tipo real Operaciones predefinidas (I) – Las operaciones de relación de datos escalares (=, ≠, <, ≤, >, ≥) – Operaciones aritméticas binarias infijas de datos reales cuyo resultado es otro dato real: + suma de datos reales. - resta de datos reales. * multiplicación de datos reales / división de datos reales • No tienen sentido las funciones de predecesor y sucesor Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 55 Definidos por enumeración Dominio de valores – Un tipo escalar puede ser definido enumerando, de forma ordenada, todos los valores de su dominio. Representación algorítmica externa – Cada valor se distingue por un identificador único (no puede haber dos datos de un mismo tipo escalar con un mismo identificador asociado). Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 56 Definidos por enumeración Dominio de valores – Un tipo escalar puede ser definido enumerando, de forma ordenada, todos los valores de su dominio. Representación algorítmica externa – Cada valor se distingue por un identificador único (no puede haber dos datos de un mismo tipo escalar con un mismo identificador asociado). Los identificadores deben comenzar por letra, seguida de letra o dígitos: numeros = (123, 456, 8237); (MAL) signos = (A+,B-); (MAL) palabras = (‘OK’, ‘FAILURE’); (MAL) vacaciones = (sabado, domingo); (BIEN) codigos = (A126, B792, C9136); (BIEN) Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 57 Definidos por enumeración Representación algorítmica interna – Codificación numérica (0,1,2…..) Ejemplos: Tipo semaforo=(rojo, amarillo, verde); dia=(lunes, martes, miercoles, jueves, viernes, sabado, domingo); estado=(solido, liquido, gaseoso); Representación interna Codificación numérica. Por ejemplo: rojo->0 amarillo->1 verde->2 lunes->0 martes->1 . . . . . . Domingo->6 Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 60 Definidos por subrango Dominio de valores – Subrango de un tipo escalar numerable dias=(lunes, martes, miercoles, jueves, viernes, sabado, domingo) alfabeto= ‘A’..’Z’ {subrango del tipo carácter} laborables= lunes..viernes {subrango del tipo días} fechas= 1..31 {subrango del tipo entero} – Un tipo escalar definido como subrango conserva todas las operaciones asociadas al tipo a partir del cual se define. Grado en Ingeniería de Tecnologías Industriales Fundamentos de Informática Lección 2: Tipos de datos: Concepto de tipo de dato. Constantes y variables. 61 ¿Quieres saber más? • http://es.wikipedia.org/wiki/Tipo_de_dato • ¡Resolviendo problemas!
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved