Principios Fundamentales para el Proceso de la toma de decisiones
3.1.- Tipo de Datos
1. Unidad 3:
Datos y Entidades Primitivas
Profa. Yenny Salazar
Identificar los tipos de datos empleados
en la escritura de algoritmos y programas.
2. ● Datos
● Tipo de Datos
oRango de los Valores
oTipo de Datos Caracteres
oTipo de Datos Numéricos
oTipo de Datos Lógicos
oTipo de Datos Void
● Conversión de Tipos
o Conversión Forzada de Tipos de Datos
● Actividades
● Referencias
3. Son las representaciones simbólicas de un determinado atributo o
variable. Estos datos pueden ser las cifras de ventas de un
supermercado o las calificaciones de una clase. Esta expresión
general, describe los objetos con los cuales opera una computadora.
Los datos de entrada se transforman en datos de salida, después de
ser procesados por el programa. En los lenguajes de programación,
los datos son la expresión de las entidades sobre las cuales operan
dichos programas, que están almacenados en memoria, discos, USB,
tarjetas SD… o bien son introducidos por un periférico de entrada
como: teclado, escáner, sensor eléctrico, etc.
Los datos, son particularmente importantes para la estructura de
datos (rama de la computación que estudia la forma particular de
almacenaje de la información en porciones mínimas para lograr una
posterior recuperación eficiente).
En el proceso de resolución de problemas, el diseño de la
estructura de datos es tan importante como el diseño del
algoritmo y su traducción a un lenguaje de programación.
4. Es el conjunto específico de valores que asumen los datos y un
conjunto de operaciones que actúan sobre ellos.
Cuando se habla de tipos de datos (o simplemente tipo) se refiere
a un atributo que le indica al computador la naturaleza de los datos
que se dispone a procesar. Esto incluye delimitar o restringir los
datos, definir los valores que pueden tomar, qué operaciones se
puede realizar con ellos, etc.
La mayoría de las computadoras pueden trabajar con varios tipos
de datos y algunos de esos tipos son:
● Carácter: Dígitos individuales que se pueden representar
mediante datos numéricos (0-9), letras (a-z) u otros símbolos.
● Carácter unicode: Unicode es un estándar de codificación que
permite representar más eficazmente los datos, permitiendo así
hasta 65.535 caracteres diferentes.
● Numéricos: Pueden ser números reales o enteros.
● Lógicos: Representan dos valores (verdadero o falso)
5. En los lenguajes de programación los datos deben de ser de un
tipo específico, donde se establece el rango de valores que puede
tomar durante el programa. Por ejemplo en lenguaje C cada tipo de
dato está delimitado por un rango de valores:
Siendo E: exponencial
Tipo Tamaño (bytes) Rango
int (enteros) 2 -32,768 a 32,767
float (flotante - reales) 4 3.4 E-38 a 3.4 E+38
double (flotante de doble precisión) 8 1.7 E-308 a 1.7 E+308
char (carácter) 1 -128 a 127
void 0 sin valor
6. El almacenamiento de caracteres se hace en palabras de 8 bits (1
byte). Este tipo representa valores enteros (de -128 a 127). El lenguaje
C proporciona el tipo unsigned char para valores de 0 a 255 y así
representar todos los caracteres ASCII.
Una característica de la parte estándar del conjunto de caracteres
(los primeros 128) es que contiene las letras mayúsculas (A–Z), las
minúsculas (a–z) y los dígitos (0–9), y que cada uno de estos tres
subconjuntos está ordenado en su forma natural, por lo que se
pueden manejar rangos de caracteres bien definidos. Los caracteres
se almacenan internamente como números y por lo tanto se pueden
realizar operaciones aritméticas con datos tipo carácter (char).
Existe también el dato tipo cadena, que es una sucesión de
caracteres que se encuentran delimitados por comillas; su longitud
(número de caracteres) se define entre los delimitadores [ ].
7. Este tipo de datos se divide en enteros y reales.
● Enteros (int): Son aquellos números que no tienen fracciones o
decimales. Pueden ser negativos o positivos, aunque este rango
puede variar de un compilador a otro. Se almacenan
internamente en 2 o 4 bytes de memoria y pueden ser: unsigned
int, short int, int, unsigned long o long (cada uno de estos datos
puede almacenar un rango diferente de valores). Cuando el
rango de los tipos básicos no es suficientemente grande para sus
necesidades, se consideran tipos enteros largos. Ambos tipos
long requieren 4 bytes de memoria (32 bits) de almacenamiento.
● Reales o de coma flotante (float/double): Son aquellos números
que contienen una coma (un punto) decimal, tal como 3.1416,
pueden ser positivos y negativos, formando el subconjunto de
los números reales. Para representar números muy pequeños o
muy grandes se emplea la notación de punto flotante, que es
una generalización de la notación científica. C soporta tres
formatos de coma flotante: el float (4 bytes), double (8 bytes) y
long double (10 bytes).
8. Los valores lógicos True y False (verdadero y falso) son de tipo
bool, que representa valores lógicos.
El nombre bool viene del matemático George Boole, quien creó un
sistema algebraico para la lógica binaria. Por lo mismo, a True y
False también se les llama valores booleanos. El nombre no es muy
intuitivo, pero es el que se usa en informática, así que hay que
conocerlo.
Hay lenguajes que sólo pueden tomar uno de dos valores
(verdadero y falso), en lenguaje C no existe el tipo lógico pero se
puede implementar con un número entero, 0 es falso, y cualquier
número diferente de cero es verdadero.
Este tipo de datos se utiliza para representar las alternativas
(sí/no) a determinadas condiciones. Por ejemplo, cuando se pide si
un valor entero es par, la respuesta será verdadera o falsa, según
sea par o impar.
9. Los tipo de datos void, son datos vacíos o sin valor. La palabra
reservada void define el concepto de no existencia o no atribución
de un tipo de dato en una variable o declaración. Es decir, una
función declarada como void no devolverá ningún valor. Esta
palabra reservada también puede usarse para indicar que una
función no recibe parámetros. Por ejemplo la función main en
lenguaje C, no regresa valor alguno (nada): void main() o void
main(void) porque tampoco tiene parámetros.
Se debe tener cuidado, ya que esta característica es propia de
algunos compiladores, pero por ejemplo en DEV-C11 el main tiene
que regresar un entero (int), por el return 0, es decir int main(void)
o int main(); pero las demás funciones predefinidas sí pueden
utilizar el tipo void; esto se estudiará más adelante.
10. Cuando se evalúa una expresión aritmética que contiene
diferentes tipos de datos, el compilador convierte todos ellos a un
tipo único. Estas conversiones pueden aumentar o disminuir la
precisión del tipo al que se convierten los elementos de la
expresión. La conversión se hace operación a operación y se lleva a
cabo según el tipo que esté más a la derecha de la siguiente
relación:
char→int→unsigned int→long→unsigned long→float→double→long double
Conversión Forzada de Tipos de Datos
Además de la conversión automática, el lenguaje C ofrece la
posibilidad de forzar la conversión de un tipo de datos en otro tipo
diferente. Esta conversión forzada es conocida como casts
11. ACTIVIDAD
● Investigue y realice un cuadro comparativo con
los rangos de valores, memoria requerida y
descripción de cada tipo de dato, incluyendo
los vistos en este tema y los signed, unsigned,
short, long, según corresponda.
● Identifique qué tipo de dato son los siguientes:
* “12” * 234 * 0.23e-12 * “casa”
* 3.14 * „A‟ * TRUE * i
● Investigue cuáles tipo de datos soporta el
PSeInt.
12. Corona, M. y Ancona M. 2011. Diseño de algoritmos y su codificación en
lenguaje C. McGraw-Hill. México.
Joyanes, L. y Zahonero, I. 2002. Programación en C. Metodología,
algoritmos y estructura de datos. McGraw-Hill.
Joyanes, L. 2008. Fundamentos de Programación, Algoritmos, Estructura
de Datos y Objetos. Cuarta edición. McGraw-Hill.
López, J. Algoritmos y Programación. 2009. Segunda Edición. Eduteka.
Unidad 3:
Datos y Entidades Primitivas
Profa. Yenny Salazar