



Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Asignatura: elementos programacion, Profesor: , Carrera: Ingeniería Informática, Universidad: UMA
Tipo: Apuntes
1 / 6
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!




UNIVERSIDAD DE MALAGA
DPTO. DE LENGUAJES Y C. DE LA COMPUTACION
E.T.S. DE INGENIERIA INFORMATICA
INGENIERIA INFORMATICA
IV.I. Elementos básicos.IV.2. Clasificación de los tipos (simples y estructurados).IV.3. Tipos simples predefinidos.IV.4. Tipos simples definidos por el programador.Bibliografía [JOYA03] [DALE89a]
E.T.S. de IngenierÌa Inform·tica (Ing. Inform·tica)
Dpto de Lenguajes y C. de la ComputaciÛn
Elementos de ProgramaciÛn
Tema IV Tipos de datos simples 1
IV.1.-ELEMENTOS BÁSICOS. - Ya sabemos que en los algoritmos aparecen objetos que tienen tres
caracterÌsticas:
Define el conjunto de valores que puede tomar un determinadoobjeto.
-^
Determina las operaciones que se pueden aplicar a un objeto.
-^
Define el espacio que ser· necesario reservar en memoria paraalbergar a un objeto.
-^
Define la interpretaciÛn del valor almacenado en memoria.
Cardinalidad.
Es
el
n˙mero
de
valores
que
tiene
un
tipo
de
datos.
La
simbolizaremos con '#'.
Operadores b·sicos.
b·sicos. øCu·ntos?, øcu·les?. Como criterio general: se leasocian
aquellos
que
posibiliten
al
programador
construir
cualquier operaciÛn adicional, en funciÛn de los b·sicos, deuna forma eficiente.
operador para distintos tipos de datos. Esto se denominaìsobrecargaî.
E.T.S. de IngenierÌa Inform·tica (Ing. Inform·tica)
Dpto de Lenguajes y C. de la ComputaciÛn
Elementos de ProgramaciÛn
Tema IV Tipos de datos simples 2
Compatibilidad de tipos.
compatibles (iguales o no).
operaciones inapropiadas con tipos de datos no compatibles.
chequeo de tipos.
tendiendo a aplicar operadores a tipos de datos iguales, con el fin deevitar posibles errores de diseÒo.
DeclaraciÛn de constantes y variables en nuestro pseudolenguaje.
Constantes
nombre
valor
Variables
nombre : Tipo
E.T.S. de IngenierÌa Inform·tica (Ing. Inform·tica)
Dpto de Lenguajes y C. de la ComputaciÛn
Elementos de ProgramaciÛn
Tema IV Tipos de datos simples 3
E.T.S. de IngenierÌa Inform·tica (Ing. Inform·tica)
Dpto de Lenguajes y C. de la ComputaciÛn
Elementos de ProgramaciÛn
Tema IV Tipos de datos simples 6
Tipo natural.
Valores:
n˙meros
enteros
no
negativos
(incluido
el
cero)
comprendidos en el rango (representaciÛn en binario puro):
N
ñ 1]
esto supone una ventaja respecto al tipo entero si sÛlo vamos autilizar n˙meros positivos.
N
Tipo real.
decimal y con un posible factor de escala, aunque en nuestropseudolenguaje seremos flexibles en este sentido. Ejemplos:
Los N bits se dividen en dos partes (coma flotante):
a) mantisa (entera o fracciÛn).b) factor de escala o exponente,.
Cada parte tiene un n∫ finito de dÌgitos => representaciÛninexacta y operaciones con reales tambiÈn inexactas.
E.T.S. de IngenierÌa Inform·tica (Ing. Inform·tica)
Dpto de Lenguajes y C. de la ComputaciÛn
Elementos de ProgramaciÛn
Tema IV Tipos de datos simples 7
Tipo booleano.
Cada computador se comunica con su entorno vÌa alg˙ndispositivo
de
Lo
hace
mediante
elementos
pertenecientes a un conjunto fijo de caracteres.Este
conjunto
constituye
el
rango
de
valores
del
tipo
Car·cter.El conjunto m·s estandarizado es el ASCII. Est· ordenado ycada car·cter tiene una posiciÛn fija u "ordinal"
Un valor car·cter se le puede asignar a una variable de tipocar·cter,
pero
las
operaciones
aritmÈticas
no
pueden
utilizarse sobre ellos.SÌ se pueden usar operadores aritmÈticos sobre sus n˙merosordinales correspondientes, obtenidos mediante la funciÛnestandar
NATURAL(ch),
que
devuelve
el
ordinal
correspondiente al car·cter ch.
E.T.S. de IngenierÌa Inform·tica (Ing. Inform·tica)
Dpto de Lenguajes y C. de la ComputaciÛn
Elementos de ProgramaciÛn
Tema IV Tipos de datos simples 8
Problemas derivados de la implementación de los tipos numéricos - La cantidad de memoria utilizada para almacenar un valor numÈrico en
un computador es limitada. Si se intenta almacenar un valor cuyarepresentaciÛn en binario excede el n˙mero de bits reservado para eltipo de datos de dicho valor, se produce lo que se conoce como desbordamiento
Por ejemplo, si trabajamos con n˙meros naturales y el n˙mero de bitsreservado para ellos es 4, al realizar la suma de los valores 7 y 10, seproducir· un desbordamiento, pues el resultado, 17, requiere 5 bits parasu representaciÛn.
Eso mismo ocurre cuando se trabaja con enteros y con reales. Con estos˙ltimos adem·s existe un problema aÒadido: la precisiÛn (n˙mero dedÌgitos significativos representables). El n˙mero de dÌgitos decimalesque se pueden almacenar es limitado, lo que implica que al realizaroperaciones con reales se puede ir ìperdiendoî precisiÛn. Por ejemplo:
Si la precisiÛn es de 4 dÌgitos:Si las variables X,Y,Z tienen los valores 9.900, 1.000 y -0.999respectivamente,
Cuando realmente deberÌan dar el mismo resultado. Esto nos hace verque cuando se trabaja con reales no debemos hacer, por ejemplo,comparaciones de valores con el operador de igualdad predefinido (=).Una soluciÛn es construirnos nuestra propia operaciÛn de comparaciÛnde igualdad:
Constantes
ERROR
=
1E-
PROC
Ig_Real(
↓ x,y:
R;
↑ res:
B
)
Inicio
res
←
ABS
(x-y)
<
ERROR
Fin
E.T.S. de IngenierÌa Inform·tica (Ing. Inform·tica)
Dpto de Lenguajes y C. de la ComputaciÛn
Elementos de ProgramaciÛn
Tema IV Tipos de datos simples 9
IV.4.- TIPOS SIMPLES DEFINIDOS POR EL PROGRAMADOR. - Aunque los tipos simples predefinidos vistos son ˙tiles para cualquier
propÛsito (que no requiera tipos estructurados), es conveniente que elprogramador pueda definir sus propios tipos simples. La razÛn es quepodamos representar adecuadamente en nuestro programa el problema ylos conceptos implicados de forma que el programa refleje lo m·sadecuada y exactamente posible el problema que se pretende resolver. Tipo enumerado.
ciertas variables tienen una determinada interpretaciÛn.
en
una
"enumeraciÛn"
entre
parÈntesis
de
los
identificadores que representan los valores abstractos del objeto arepresentar. Una variable de tipo enumerado sÛlo podr· tomar en undeterminado momento uno de esos identificadores.
o estructurado) debe darle un nombre que lo identifique dentro delprograma. Para ello, en la zona de declaraciones del algoritmo, seutiliza una secciÛn dedicada a
Tipos
declarar objetos de dicho tipo.
har· de la siguiente forma:
nombre = (lista de identificadores separados por comas)
nombre serÌa ahora un tipo de datos enumerado y las variablesdeclaradas de este tipo (ej, x,y: nombre) podr·n tomar cualquieridentificador que estÈ en la lista.