Clasificación de datos El Reglamento de medidas de seguridad establece que los datos de carácter personal recogidos y tratados en ficheros, informatizados o manuales, pueden clasificarse en tres niveles: básico, medio y alto, atendiendo a la mayor o menor necesidad de garantizar la confidencialidad y la integridad de la información. Estos son los datos que corresponden a cada uno de esos tres niveles, de acuerdo con las definiciones especificadas en el propio Reglamento: Nivel Básico: Todos los ficheros que contengan datos de carácter personal deberán adoptar las medidas de seguridad calificadas como de nivel básico. Nivel Medio: Los ficheros que contengan datos relativos a la comisión de infracciones administrativas o penales, Hacienda Pública, servicios financieros y aquellos ficheros cuyo funcionamiento se rija por el artículo 28 de la Ley Orgánica 5/1992, deberán reunir, además de las medidas de nivel básico, las calificadas como de nivel medio. Cuando los ficheros contengan un conjunto de datos de carácter personal suficientes que permitan obtener una evaluación de la personalidad del individuo deberán garantizar las medidas de nivel medio. Nivel Alto: Los ficheros que contengan datos de ideología, religión, creencias, origen racial, salud o vida sexual así como los que contengan datos recabados para fines policiales sin consentimiento de las personas afectadas deberán reunir, además de las medidas de nivel básico y medio, las calificadas como de nivel alto.
Introducción a los tipos de datos Una definición muy simple: El tipo de un dato es el conjunto de valores que puede tomar durante el programa. Si se le intenta dar un valor fuera del conjunto se producirá un error. La asignación de tipos a los datos tiene dos objetivos principales: Por un lado, detectar errores en las operaciones Por el otro, determinar cómo ejecutar estas operaciones De Pascal se dice que es un lenguaje fuertemente tipeado. Esto quiere decir que todos los datos deben de tener un tipo declarado explícitamente, y además que existen ciertas restricciones en las expresiones en cuanto a los tipos de datos que en ellas intervienen. Una ventaja de los lenguajes fuertemente tipeados es que se gasta mucho menos esfuerzo en depurar (corregir) los programas gracias a la gran cantidad de errores que detecta el compilador. Los tipos de datos, como casi todos los objetos de Pascal, se pueden declarar. La declaración de tipos ya se comentó en el tema correspondiente a la estructura de un programa.
Clasificaciones en los tipos de datos sólo se trataran los básicos para ir construyendo los primeros programas. Existen muchas clasificaciones para los tipos de datos, y dependiendo de la fuente que se mire, mostrarán una u otra. A continuación tienes una de las posibles clasificaciones.: El tipo cadena Estructurados Simples
ordinales Tipos simples Como su nombre indica son los tipos básicos en Pascal. Son los más sencillos y los más fáciles de aprender. Por todo esto, serán en los que nos centremos. Los tipos simples más básicos son: entero, lógico, carácter y real. Y la mayoría de los lenguajes de programación los soportan, no como ocurre con los estructurados que pueden variar de un lenguaje a otro. Tipos estructurados Mientras que una variable de un tipo simple sólo referencia a un elemento, los estructurados se refieren a colecciones de elementos. Las colecciones de elementos que aparecen al hablar de tipos estructurados son muy variadas: tenemos colecciones ordenadas que se representan mediante el tipo array, colecciones sin orden mediante el tipo conjunto, e incluso colecciones que contienen otros tipos, son los llamados registros. Tipos ordinales Dentro de los tipos simples, los ordinales son los más abundantes. De un tipo se dice que es ordinal porque el conjunto de valores que representa se puede contar, es decir, podemos establecer una relación uno a uno entre sus elementos y el conjunto de los números naturales. Dentro de los tipos simples ordinales, los más importantes son: El tipo entero (integer) El tipo lógico (boolean) El tipo carácter (char)
Los tipos básicos Realmente de los tipos simples tomamoslos más básicos, que son: integer, boolean, char y real. Además, también se hablaras un poco de las cadenas de caracteres, los llamados strings. nota: a continuación sólo se comentará qué es cada tipo, no se explicará su declaración, esto puedes verlo si vas a la sección correspondiente. El tipo integer (entero) Como ya habrás leído el tipo de datos entero es un tipo simple, y dentro de estos, es ordinal. Al declarar una variable de tipo entero, estás creando una variable numérica que puede tomar valores positivos o negativos, y sin parte decimal. Este tipo de variables, puedes utilizarlas en asignaciones, comparaciones, expresiones aritméticas, etc. Algunos de los papeles más comunes que desarrollan son: Controlar un bucle Usarlas como contador, incrementando su valor cuando sucede algo Realizar operaciones enteras, es decir, sin parte decimal Y muchas más... El tipo boolean (lógico) El tipo de datos lógico es el que te permite usar variables que disponen sólo de dos posibles valores: cierto o falso. Debido a esto, su utilidad salta a la vista, y no es otra que variables de chequeo. Nos sirven para mantener el estado de un objeto mediante dos valores:
si/no cierto/falso funciona/no funciona on/off etc. El tipo real (real) Como ya he visto, Pascal soporta el conjunto entero de números. Pero no es el único, también te permite trabajar con números pertenecientes al conjunto real. El tipo de datos real es el que se corresponde con los números reales. Este es un tipo importante para los cálculos. Por ejemplo en los estadísticos, ya que se caracterizan por tratar fundamentalmente con valores decimales. nota: Aunque pueda que estés acostumbrado a escribir con coma los decimales, te advierto que en Pascal y en todos los lenguajes de programación se escribe con un punto. Por ejemplo: 3.1416 Los tipos char y string (carácter y cadena) Con el tipo carácter puedes tener objetos que representen una letra, un número, etc. Es decir, puedes usar variables o constantes que representen un valor alfanumérico. Pero ojo, cada variable sólo podrá almacenar un carácter. Sin embargo, con las cadenas de caracteres (strings) puedes contener en una sóla variable más de un carácter. Por ejemplo, puedes tener en una variable tu nombre. Veamos cómo se usan ambos tipos en el siguiente ejemplo
EL TRATAMIENTO INFORMACIÓN.
AUTOMÁTICO
DE
LA
La informática se ocupa como ciencia de tratar la información de forma automática mediante máquinas electrónicas. Este tratamiento recibe el nombre de procesamiento de datos y se puede dividir en tres etapas diferenciadas: - Fase de entrada En la primera fase de entrada, el usuario introduce los datos a través de unos dispositivos conectados al ordenador. Estos dispositivos se denominan periféricos de entrada y son, entre otros, el teclado y el ratón. - Fase de proceso Una vez que ha recibido los datos, el ordenador los almacena en la memoria y realiza las operaciones necesarias para obtener los resultados. - Fase de salida Por último, el ordenador muestra en la fase de salida los resultados y lo hace a través de dispositivos conectados a él. Estos dispositivos se llaman periféricos de salida y son, por ejemplo, el monitor y la impresora.
INFORMACION La información es un fenómeno que proporciona significado o sentido a las cosas, e indica mediante códigos y conjuntos de datos, los modelos del pensamiento humano. La información por tanto, procesa y genera el conocimiento humano. Aunque muchos seres vivos se comunican transmitiendo información para su supervivencia, la diferencia de los seres humanos radica en su capacidad de generar y perfeccionar tanto códigos como símbolos con significados que conformaron lenguajes comunes útiles para la convivencia en sociedad, a partir del establecimiento de sistemas de señales y lenguajes para la comunicación. En sentido general, la información es un conjunto organizado de datos procesados, que constituyen un mensaje sobre un determinado ente o fenómeno. De esta manera, si por ejemplo organizamos datos sobre un país, tales como: número de habitantes, densidad de población, nombre del presidente, etc. y escribimos por ejemplo, el capítulo de un libro, podemos decir que ese capítulo constituye información sobre ese país. Cuando tenemos que resolver un determinado problema o tenemos que tomar una decisión, empleamos diversas fuentes de información (como podría ser el capítulo mencionado de este libro imaginario), y construimos lo que en general se denomina conocimiento o información organizada que permite la resolución de problemas o la toma de decisiones (ver apartado sobre conocimiento). Los datos se perciben mediante los sentidos, éstos los integran y generan la información necesaria para producir el conocimiento que es el que finalmente permite tomar decisiones para realizar las acciones cotidianas que aseguran la existencia social. La sabiduría consiste en juzgar correctamente cuando, cómo, donde y con qué objetivo emplear el conocimiento adquirido. El ser humano ha logrado simbolizar los datos en forma representativa (lenguaje) para posibilitar el conocimiento de algo concreto y creó las formas de almacenar y utilizar el conocimiento representado. Existe una relación indisoluble entre los datos, la información, el conocimiento, el pensamiento y el lenguaje, por lo que una mejor comprensión de los conceptos sobre información redundará en un aumento del conocimiento, ampliando así las posibilidades del pensamiento humano, que también emplea el lenguaje -oral, escrito, gesticular, etc.-, y un sistema de señales y símbolos interrelacionados. Son informaciones: la noticia, la entrevista de declaraciones o entrevista objetiva, el reportaje informativo y la documentación.
Principales Características de la Información: Significado (semántica) Importancia (relatividad al receptor) Vigencia (en la dimensión espacio-tiempo) Validez (relativa al emisor) Valor (activo intangible volátil) Polimorfismo
Historia de la información En la Edad Media el almacenamiento, acceso y uso limitado de la información se realizaba en las bibliotecas de los monasterios entre los siglos III y XV. Los Incas (Perú) en el siglo XII usaban un sistema de cuerdas para el registro de información numérica llamada Quipu, usado principalmente para contar ganado.
En la Edad Moderna, con el nacimiento de la imprenta (Gutenberg), los libros podían fabricarse en serie. Surgen los primeros periódicos. En el siglo XX, Claude E. Shannon, un ingeniero nacido en Michigan en 1916, publicó en 1948 algunos trabajos relacionados con el tratamiento de la información (teoría de la información). Durante este siglo irrumpe la radio, la televisión e Internet. James Watson y Francis Crick descubrieron los principios de los códigos de ADN, que forman un sistema de información a partir de la doble espiral de ADN y la forma en que trabajan los genes. En los años 40, Jeremy Campbell, definió el término información desde una perspectiva científica, en el contexto de la era de la comunicación electrónica. Norbert Wiener, padre de la cibernética, se encargó de "mantener el orden" en cualquier sistema natural o artificial. Estos avances dieron lugar a una nueva etapa en el desarrollo de la tecnología, en la cual muchos científicos se inspiraron en estos estudios para hacer sus propios aportes a la teoría de la información. Actualmente, ya en el siglo XXI, en un corto período de tiempo, el mundo desarrollado se ha propuesto lograr la globalización del acceso a los enormes volúmenes de información existentes en medios cada vez más complejos, con capacidades ascendentes de almacenamiento y en soportes cada vez más reducidos. La proliferación de redes de transmisión de datos e información, de bases de datos con acceso en línea, ubicadas en cualquier lugar, localizables mediante Internet, permiten el hallazgo de otras redes y centros de información de diferentes tipos en cualquier momento desde cualquier lugar.
Función de la información [editar] Se considera que la generación y/o obtención de información persigue estos objetivos: Aumentar el conocimiento del usuario. Proporcionar a quien toma decisiones la materia prima fundamental para el desarrollo de soluciones y la elección. Proporcionar una serie de reglas de evaluación y reglas de decisión para fines de control. [[Archivo:== [[TIKO SA]] ==]] En relación con el tercer punto, la Información como vía para llegar al Conocimiento, debe de ser elaborada para hacerla utilizable o disponible. Este proceso empírico se llama Documentación, que tiene métodos y herramientas propios. La cantidad de información y el conocimiento desarrollado, aparentemente es enorme y tiene una metodología de recuperación, que eventualmente es infinita o total en un número muy amplio de soportes y sitios y el modelo sistémico de recuperación debe maximizar la búsqueda para asegurar su captura lo más completa posible dentro del entorno de este sistema complejo. En el caso de búsquedas en Internet y usando dos o más descriptores, los resultados numéricos que dan los motores de búsqueda, que contengan los dos o más términos juntos o muy próximos, ya es una medida de la cantidad de información conseguida y que es en expresión matemática el ln o logaritmo natural de la suma de las interacciones validadas. Valores de 2 o 3 serán óptimos. La información como tal no tiene funciones, pues estas son el funcionamiento de algo, de modo que estas funciones solamente son propias de quien emplea y maneja la información. Pero también es imposible que la información dote al individuo de más conocimiento, es él
quien valora lo significativo de la información, la organiza y la convierte en conocimiento. No es la información de modo directo. El dato, en sí, es un "afijo" de la información, por así llamarlo.
Datos 1. Técnicamente, los datos son hechos y cifras en bruto, tales como órdenes y pagos, los cuales se procesan para obtener información, por ejemplo el saldo deudor y el monto disponible. Sin embargo, en el uso común, los términos datos e información se toman como sinónimos. La cantidad de datos versus información que se guarda en el computador constituye una compensación. Los datos pueden procesarse en diferentes formas de información, pero toma tiempo clasificar y sumar transacciones. La información actualizada puede proporcionar respuestas inmediatas. Un error frecuente es creer que el software es también datos. El computador ejecuta o corre un software. Los datos se "procesan", mientras que el software se "ejecuta". 2. Cualquier forma de información, ya sea en forma electrónica o sobre papel. En forma electrónica, "datos" se refiere a archivos, bases de datos, documentos de texto, imágenes y, voz y video codificados en forma digital.
1. El Concepto de Datos Datos son los hechos que describen sucesos y entidades."Datos" es una palabra en plural que se refiere a más de un hecho. A un hecho simple se le denomina "data-ítem" o elemento de dato. Los datos son comunicados por varios tipos de símbolos tales como las letras del alfabeto, números, movimientos de labios, puntos y rayas, señales con la mano, dibujos, etc. Estos símbolos se pueden ordenar y reordenar de forma utilizable y se les denomina información. Los datos son símbolos que describen condiciones, hechos, situaciones o valores. Los datos se caracterizan por no contener ninguna información. Un dato puede significar un número, una letra, un signo ortográfico o cualquier símbolo que represente una cantidad, una medida, una palabra o una descripción. La importancia de los datos está en su capacidad de asociarse dentro de un contexto para convertirse en información. Por si mismos los datos no tienen capacidad de comunicar un significado y por tanto no pueden afectar el comportamiento de quien los recibe. Para ser útiles, los datos deben convertirse en información para ofrecer un significado, conocimiento, ideas o conclusiones. 2. El Concepto de Información La información no es un dato conjunto cualquiera de ellos. Es más bien una colección de hechos significativos y pertinentes, para el organismo u organización que los percibe. La definición de información es la siguiente: Información es un conjunto de datos significativos y pertinentes que describan sucesos o entidades. DATOS SIGNIFICATIVOS. Para ser significativos, los datos deben constar de símbolos reconocibles, estar completos y expresar una idea no ambigua. Los símbolos de los datos son reconocibles cuando pueden ser correctamente interpretados. Muchos tipos diferentes de símbolos comprensibles se usan para transmitir datos. La integridad significa que todos los datos requeridos para responder a una pregunta específica están disponibles. Por ejemplo, un marcador de béisbol debe incluir el tanteo de ambos equipos. Si se oye el tanteo "New York 6" y no oyes el del oponente, el anuncio será
incompleto y sin sentido. Los datos son inequívocos cuando el contexto es claro. Por ejemplo, el grupo de signos 2-x puede parecer "la cantidad 2 menos la cantidad desconocida llamada x" para un estudiante de álgebra, pero puede significar "2 barra x" a un vaquero que marca ganado. Tenemos que conocer el contexto de estos símbolos antes de poder conocer su significado. Otro ejemplo de la necesidad del contexto es el uso de términos especiales en diferentes campos especializados, tales como la contabilidad. Los contables utilizan muchos términos de forma diferente al público en general, y una parte de un aprendizaje de contabilidad es aprender el lenguaje de contabilidad. Así los términos Debe y Haber pueden significar para un contable no más que "derecha" e "izquierda" en una contabilidad en T, pero pueden sugerir muchos tipos de ideas diferentes a los no contables. DATOS PERTINENTES. Decimos que tenemos datos pertinentes (relevantes) cuando pueden ser utilizados para responder a preguntas propuestas. Disponemos de un considerable número de hechos en nuestro entorno. Solo los hechos relacionados con las necesidades de información son pertinentes. Así la organización selecciona hechos entre sucesos y entidades particulares para satisfacer sus necesidades de información. 3. Diferencia entre Datos e información Los Datos a diferencia de la información son utilizados como diversos métodos para comprimir la información a fin de permitir una transmisión o almacenamiento más eficaces. Aunque para el procesador de la computadora hace una distinción vital entre la información entre los programas y los datos, la memoria y muchas otras partes de la computadora no lo hace. Ambos son registradas temporalmente según la instrucción que se le de. Es como un pedazo de papel no sabe ni le importa lo que se le escriba: un poema de amor, las cuentas del banco o instrucciones para un amigo. Es lo mismo que la memoria de la computadora. Sólo el procesador reconoce la diferencia entre datos e información de cualquier programa. Para la memoria de la computadora, y también para los dispositivos de entrada y salida (E/S) y almacenamiento en disco, un programa es solamente más datos, más información que debe ser almacenada, movida o manipulada. La cantidad de información de un mensaje puede ser entendida como el número de símbolos posibles que representan el mensaje."los símbolos que representan el mensaje no son más que datos significativos. En su concepto más elemental, la información es un mensaje con un contenido determinado emitido por una persona hacia otra y, como tal, representa un papel primordial en el proceso de la comunicación, a la vez que posee una evidente función social. A diferencia de los datos, la información tiene significado para quien la recibe, por eso, los seres humanos siempre han tenido la necesidad de cambiar entre sí información que luego transforman en acciones. "La información es, entonces, conocimientos basados en los datos a los cuales, mediante un procesamiento, se les ha dado significado, propósito y utilidad" 4. El Concepto de Procesamiento de Datos Hasta el momento hemos supuesto que los datos que maneja una aplicación no son tan voluminosos y por lo tanto caben en memoria. Cuando recurrimos a archivos se debe a la necesidad de conservar datos después de que termina un programa, por ejemplo para apagar el computador. Sin embargo, existen problemas en donde el volumen de datos es tan grande que es imposible mantenerlos en memoria. Entonces, los datos se almacenan en un conjunto de archivos, los que forman una base de datos. Una base de datos es por lo tanto un conjunto de archivos que almacenan, por ejemplo, datos con respecto al negocio de una empresa.
Cada archivo se forma en base a un conjunto de líneas y cada línea esta formada por campos de información. Todas las líneas de un mismo archivo tienen la misma estructura, es decir los mismos campos de información. Diferentes archivos poseen estructuras distintas, i.e. campos de información. Por ejemplo, el archivo de postulantes post.dat, visto en capítulos anteriores, tiene la siguiente información: ci: carnet de identidad de la persona. nombre. En lo que sigue supondremos que ambos archivos son lo suficientemente grandes como para que no quepan en la memoria del computador. A continuación resolveremos eficientemente el problema de generar un archivo con los tres campos de información, sin colocar previamente el contenido de un archivo en un arreglo. Algunas definiciones Recolección de datos: Provee un vínculo para obtener la información interoperacionables racional y las parametrizaciones. Almacenamiento de datos: Las unidades de disco de la computadora y otros medios de almacenamiento externo permiten almacenar los datos a más largo plazo, manteniéndolos disponibles pero separados del circuito principal hasta que el microprocesador los necesita. Una computadora dispone también de otros tipos de almacenamiento. La memoria de sólo lectura (ROM) es un medio permanente de almacenamiento de información básica, como las instrucciones de inicio y los procedimientos de entrada/salida. Asimismo, una computadora utiliza varios buffers (áreas reservadas de la memoria) como zonas de almacenamiento temporal de información específica, como por ejemplo los caracteres a enviar a la impresora o los caracteres leídos desde el teclado. Procesamiento de datos: El objetivo es graficar el Procesamiento de Datos, elaborando un Diagrama que permita identificar las Entradas, Archivos, Programas y Salidas de cada uno de los Procesos. Su antecedente es el Diagrama de Flujo. Los elementos claves son los Programas. Se confecciona el Diagrama de Procesamiento de Datos Este Diagrama no se podrá elaborar por completo desde un primer momento ya que depende del Flujo de Información. En este primer paso sólo se identifican las Salidas y Programas. Los elementos restantes se identifican en forma genérica. Validación de datos: Consiste en asegurar la veracidad e integridad de los datos que ingresan a un archivo. Existen numerosas técnicas de validación tales como: Digito verificador, chequeo de tipo, chequeo de rango. 5. Concepto de Procesamiento Distribuido y Centralizado Procesamiento Centralizado: En la década de los años 50’s las computadoras eran máquinas del tamaño de todo un cuarto con las siguientes características: • Un CPU • Pequeña cantidad de RAM • Dispositivos DC almacenamiento secundario (cintas) • Dispositivos d salida (perforadoras de tarjetas) • Dispositivos de entrada (lectores de tarjeta perforada) Con el paso del tiempo, las computadoras fueron reduciendo su tamaño y creciendo en sofisticación, • Aunque la industria continuaba siendo dominada por las computadoras grandes
"mainframes". A medida que la computación evolucionaba, las computadoras, fueron capaces de manejar aplicaciones múltiples simultáneamente, convirtiéndose en procesadores centrales "hosts" a los que se les Conectaban muchos periféricos y terminales tontas que consistían solamente de dispositivos de entrada/salida (monitor y teclado) y quizá poco espacio de almacenamiento, pero que no podían procesar por sí mismas. Las terminales locales se conectaban con el procesador central a través de interfaces seriales ordinarias de baja velocidad, mientras que las terminales remotas se enlazaban con • El "host" usando módems y líneas telefónicas conmutadas. En este ambiente, se ofrecían velocidades de transmisión de 1200, 2400, o 9600 bps. Un ambiente como el descrito es lo que se conoce como procesamiento centralizado en su forma más pura "host/terminal". Aplicaciones características de este tipo de ambiente son: • Administración de grandes tuses de datos integradas • Algoritmos científicos de alta velocidad • Control de inventarios centralizado Al continuar la evolución de los "mainframes", estos se comenzaron a conectar a enlaces de alta velocidad donde algunas tareas relacionadas con las comunicaciones se delegaban a otros dispositivos llamados procesadores comunicaciones "Front End Procesos" (I7EP’s) y controladores de grupo "Cluster Controllers" (CC’s). Procesamiento Distribuido: El procesamiento centralizado tenía varios inconvenientes, entre los que podemos mencionar que un número limitado de personas controlaba el acceso a la información y a los reportes, se requería un grupo muy caro de desarrolladores de sistemas para crear las aplicaciones, y los costos de mantenimiento y soporte eran extremadamente altos. La evolución natural de la computación fue en el sentido del procesamiento distribuido, así las minicomputadoras (a pesar de su nombre siguen siendo máquinas potentes) empezaron a tomar parte del procesamiento que tenían los "mainframes". Ventajas Existen cuatro ventajas del procesamiento de bases de datos distribuidas. La primera, puede dar como resultado un mejor rendimiento que el que se obtiene por un procesamiento centralizado. Los datos pueden colocarse cerca del punto de su utilización, de forma que el tiempo de comunicación sea mas corto. Varias computadoras operando en forma simultánea pueden entregar más volumen de procesamiento que una sola computadora. Segundo, los datos duplicados aumentan su confiabilidad. Cuando falla una computadora, se pueden obtener los datos extraídos de otras computadoras. Los usuarios no dependen de la disponibilidad de una sola fuente para sus datos .Una tercera ventaja, es que los sistemas distribuidos pueden variar su tamaño de un modo más sencillo. Se pueden agregar computadoras adicionales a la red conforme aumentan el número de usuarios y su carga de procesamiento. A menudo es más fácil y más barato agregar una nueva computadora más pequeña que actualizar una computadora única y centralizada. Después, si la carga de trabajo se reduce, el tamaño de la red también puede reducirse. Por último, los sistemas distribuidos se pueden adecuar de una manera más sencilla a las estructuras de la organización de los usuarios. 6. Estructura de Datos utilizados en el proceso electrónico de datos Arreglos Son una agrupación de datos homogéneos, es decir, con un mismo tipo de dato básico asociado. Se almacenan en forma contigua en la memoria y son referenciados con un nombre común y una posición relativa. Ejemplos: Arreglo Lineal (1 dimensión ó vector) Vista gráfica
[1] [2] [3] [4] [5] Definición de tipo Type Linea: Array [1..5] of TipoBasico; Var MiArreglo:Linea; Arreglo Bidimensional (matriz) Vista gráfica [1,1] [1,2] [1,3] Definición de tipo [1,4] Type [2,1] TipoTabla:Array[1..3,1..4] of TipoBasico; [2,2] Var [2,3] MiTabla: TipoTabla; [2,4] [3,1] [3,2] [3,3] [3,4] Pilas o colas Lifo: Imagina un montón de platos "apilados" o bien fichas de dominó formando una torre e intenta eliminar una desde el centro, ¿qué ocurre?, naturalmente esta operación no está permitida si queremos mantener intactos a los platos o a la torre construida. Por esta razón, una pila se asocia a una estructura de datos LIFO (LAST IN FIRST OUT). En base a lo anterior, construye la definición de una PILA y discútela con el profesor. En general, podemos definir para cada una de las estructuras de datos una representación estática y otra dinámica según el método de asignación de memoria utilizado. Clasificación a.)Pila estática: Sin duda tendremos que utilizar arreglos o registros que como ya sabemos son la base para estructuras de datos más complejas. Considerando la siguiente figura: Vista gráfica
Suponiendo que Dato pertenece a un mismo tipo de datos y Cuenta Dato corresponde a un entero que se incrementa a medida que un nuevo elemento se incorpora a la pila. Intenta construir la definición de tipo para la estructura Pila. TYPE ______________________________ ______________________________ ______________________________
END; b.)Pila Dinámica: Sin duda tendremos que utilizar nodos con punteros. Considera la siguiente figura:
Suponiendo que los punteros que aparecen en la figura son capaces de apuntar a un nodo y que Dato pertenece a cualquiera de los tipos básicos o estructurados, la definición de tipo sería: TYPE Puntero=^NodoPila; NodoPila=Record Info:AlgunTipo; sgte:Puntero; End; Var tope:Puntero; Un concepto por introducir es el de encapsulamiento, que significa que una vez definida la estructura e implementadas las operaciones básicas, uno se remite a utilizarlas sin importar su codificación interna, es decir, las llamadas a PUSH(pila, x) o POP(pila, y) empilarán a x o desempilarán en y sin importar cómo lo hagan. c.)Listas Enlazadas: Corresponde a una estructura lineal compuesta por una colección de datos homogéneos con alguna relación entre ellos. Dicha estructura se crea a través del método dinámico de memoria. En una lista enlazada el orden de los elementos está determinado por un campo enlace (puntero) explícito en cada elemento, por ejemplo: pilas y filas dinámicas. La representación de lista enlazada es la más óptima debido a que cualquier proceso de actualización (modificación inserción o eliminación) se realiza en base a reasignación de punteros. En este capítulo trataremos sólo con las listas enlazadas ya que las listas secuénciales ya son bien conocidas por ustedes. Tipos de Listas Enlazadas Listas lineales simplemente enlazadas Listas Circulares Listas doblemente enlazadas Listas múltiplemente enlazadas Árboles Es una estructura de datos no lineal que posee raíz, ramas y hojas, técnicamente constituye un grafo finito y sin ciclos. Un árbol define ciertos niveles jerárquicos precedidos por la raíz (1er. nivel), en donde las hojas constituyen el nivel más bajo. Componentes Raíz: Nodo que constituye la única entrada a la estructura (por ello es necesario tener un puntero sobre él). Ramas o Arcos: Conexión entre dos nodos del árbol que representa una relación de jerarquía. Hojas: Nodo sin hijos. Características Nivel o profundidad de un nodo: Longitud del camino para ir desde la raíz al nodo. Por
definición la raíz está en el nivel 0. Por ejemplo: profundidad(Y)=2, profundidad(raíz)=0, profundidad(árbol)= profundidad(hoja más profunda). Altura de un nodo: Longitud del camino más largo desde el nodo a una hoja. Por ejemplo: Altura(X)=1, Altura(Y)=0, Altura(arbol)=Altura(raíz)=profundidad(árbol) Grado de nodo: Cantidad de hijos de un nodo cualquiera. Grado de árbol: Cantidad máxima de hijos posibles de asociar a un nodo del árbol Clasificación a.)Según Número de Hijos: b.)Según Estructura de Niveles: Arbol completo: Es un árbol binario en el cual cada nodo es una hoja o posee exactamente 2 hijos. Arbol lleno: Es un árbol binario con hojas en a lo más dos niveles adyacentes l-1 y l, en las cuales los nodos terminales se encuentran ubicados en las posiciones de más a la izquierda del árbol. Si un árbol binario es completo, necesariamente es lleno c.)Según Funcionalidad: Árbol binario de búsqueda (ABB) Árbol binario de expresión Archivos: Es una es estructura de datos que reside en memoria secundaria o almacenamiento permanente (cinta magnética, disco magnético, disco óptico, disco láser, etc.). La forma de clasificación más básica se realiza de acuerdo al formato en que residen estos archivos, de esta forma hablamos de archivos ASCII (de texto) y archivos binarios. En este capítulo nos centraremos en estos últimos. Definición archivo binario: Estructura de datos permanente compuesto por registros (filas) y éstos a su vez por campos (columnas). Se caracteriza por tener un tipo de dato asociado, el cual define su estructura interna. Definición archivo texto: Estructura de datos permanente no estructurado formado por una secuencia de caracteres ASCII. Tipos de Acceso a los Archivos a.)Secuencial: Se accesan uno a uno los registros desde el primero hasta el último o hasta aquel que cumpla con cierta condición de búsqueda. Se permite sobre archivos de Organización secuencial y Secuencial Indexada. b.)Random: Se accesan en primera instancia la tabla de índices de manera de recuperar la dirección de inicio de bloque en donde se encuentra el registro buscado. (dentro del rea primaria o de overflow). Se permite para archivos con Organización Sec.Indexada. c.)Dinámico: Se accesan en primera instancia la tabla de índices de manera de recuperar la dirección de inicio de bloque en donde se encuentra el registro buscado. (dentro del rea primaria o de overflow). Se permite para archivos con Organización Sec.Indexada. d.)Directo: Es aquel que utiliza la función de Hashing para recuperar los registros. Sólo se permite para archivos con Organización Relativa. Constantes Las constantes son similares a una variable pero tienen un valor determinado que se mantiene igual en toda la ejecución del programa. El contenido de una variable puede cambiar tantas veces sea necesario. ¿Porque usar una constante si no puede cambiar de
valor?. Hacemos esto cuando deseamos usar un mismo número o una palabra (string) varias veces. Variables Magnitud que puede tomar diferentes valores y se representa con una letra o letras. La variable real es el conjunto de los números reales, y se puede representar por cualquier letra o conjunto de letras y nos sirve para poder utilizar dicha letra para calculos o para obtener resultados. 7. Conclusión La tecnología de información está transformando las actividades económicas y cotidianas como uno de los fenómenos sociológicos más importantes del siglo. Por esta razón, los niveles de oportunidades de trabajo se incrementan de una manera acelerada en diferentes áreas del conocimiento. Indiscutiblemente, las computadoras han invadido ya todos y cada uno de los campos de la actividad humana: ciencia, tecnología, arte, educación, recreación, administración, economía y de acuerdo a la tendencia actual, nuestra civilización y las venideras dependerán cada vez más de estos "cerebros" electrónicos. Se ha venido acelerando la velocidad de cambio del medio de casi todas las organizaciones, de allí que éstas necesiten ahora más información como soporte a la toma de decisiones. Aunque las entidades de tipo educativo se han descuidado en este aspecto, en estos momentos se percibe un cierto interés en la implantación de estrategias que logren interesar a estudiantes y profesores en el aprendizaje de técnicas que pretende a corto plazo masificar e implementar el uso de bases de datos, redes de datos e información y tecnología informática de punta como herramientas básicas de los actuales y nuevos profesionales del país. Para responder a los retos planteados por la nueva situación económica y tecnológica mundial, se impulsa una dinámica tendiente a dar a conocer los elementos necesarios para estar a la vanguardia en este campo.