miércoles, 22 de noviembre de 2017

estructura


INTRODUCCION

ESTRUCTURA


ESTRUCTURA DE DATOS

Estructura de Datos Estáticas:

Son aquellas en las que el tamaño ocupado en memoria se define antes de que el programa se ejecute y no puede modificarse dicho tamaño durante la ejecución del programa.
Estas estructuras están implementadas en casi todos los lenguajes.
Su principal característica es que ocupan solo una casilla de memoria, por lo tanto una variable simple  hace referencia a un único valor a la vez, dentro de este grupo  de datos se encuentra:
a)Enteros
b)Reales
c)Caracteres
d)Boléanos
e)Enumerados
f)Subrangos
Nota:Los últimos no existen en algunos lenguajes de programación.
Estructura de Datos Dinamicas:
No tienen las limitaciones o restricciones en el tamaño de memoria ocupada que son propias de las estructuras estáticas.
Mediante el uso de un tipo de datos especifico, denominado puntero, es posible construir estructuras de datos dinámicas que no son soportadas por la mayoría de los lenguajes, pero que en aquellos que si tienen estas características ofrecen soluciones eficaces y efectivas en la solución de problemas complejos.
Se caracteriza por el hecho de que con un nombre se hace referencia a un grupo de casillas de memoria.
Es decir un dato estructurado tiene varios componentes.
CLASIFICACIÓN DE LAS ESTRUCTURAS DE DATOS:
ESTRUCTURAS DE DATOS ESTÁTICAS
   1.- Simples 
       a) Boolean
       b) Char
       c) Integer
       d) Real
   2.- Compuestas
       a) Arreglos
       b) Conjuntos
       c) Strings
       d) Registros
       e) Archivos
ESTRUCTURA DE DATOS DINÁMICAS
   1.- Lineales
       a) Pila
       b) Cola
       c) Lista
   2.- No lineales 
       a) Árboles
       b) Grafos

 Una estructura de Datos es una colección de datos que pueden ser caracterizados por su organización y las operaciones que se definen en ella.
Los tipos de datos más frecuentes utilizados en los diferentes lenguajes de programación son:
Para ver el gráfico seleccione la opción "Descargar" del menú superior
Los tipos de datos simples pueden ser organizados en diferentes estructuras de datos: estáticas y dinámicas
Un diagrama conceptual es un diagrama de estructura estática que representa conceptos del mundo real y las relaciones entre ellos.
Se centra en las relaciones y los atributos en vez de los métodos u ayuda al usuario a entender la terminología del área de dominio para la que está desarrollada un sistema.
 Como conceptual de los diagramas, diagramas de clases son diagramas de estructuras estáticas que descomponen un sistema software en sus partes. Sin embargo, en un diagrama de clase, los elementos son clases que representan entidades de software totalmente definidas en vez de objetos que representan conceptos del mundo real.

Además de atributos y asociaciones, un diagrama de clases también especifica operaciones, métodos, interfaces y dependencias.

HISTORIA DE LA ESTRUCTURA ESTÁTICA: 

La estática es la rama de la mecánica clásica que analiza las cargas (fuerza, par/momento) y estudia el equilibrio estático, es decir, en un estado en el que las posiciones relativas de los subsistemas no varían con el tiempo. La primera ley de NEWTON  implica que la fuerza neta y el par neto (también conocido como MOMENTO DE FUERZA) de cada organismo en el sistema es igual a cero. De esta limitación puede derivarse cantidades como la carga o la presión. La red de fuerzas de igual a cero se conoce como la primera condición de equilibrio, y el par neto igual a cero se conoce como la segunda condición de equilibrio. Un cuerpo está en reposo cuando su velocidad es igual a cero.
El equilibrio puede ser de tras clases:
1. ESTABLE: péndulo la plomada y una campana.
2. INESTABLE: un bastón sobre su punta.
3. INDIFERENTE: Una rueda en su eje.
Si un cuerpo está suspendido el equilibrio será estable.
Si el centro de gravedad está por debajo del punto de suspensión es inestable.
El punto de aplicación de la resultante fuerza de gravedad que la tierra ejerce sobre todas y cada una de las partículas se encuentra constituidas por un cuerpo se llama centro de gravedad.

Momento de una fuerza se llama momento de un fuerza con respecto a un eje de rotación al producto resultantes de multiplicar la intensidad de la fuerza por la distancia que existe entre la recta de acción de la fuerza y el eje de rotación. A esta distancia se le llama brazo de la fuerza.
                

QUE ES UNA ESTRUCTURA ESTATICA?
Son aquellas en las que el tamaño ocupado en memoria se define antes de que el programa se ejecute y no pueda modificarse dicho tamaño durante la ejecución  del programa, la estática abarca el estudio del equilibrio tanto del conjunto como de sus partes constituyentes, incluyendo las porciones elementales de materia.

Estas estructuras están implementadas en casi todos los lenguajes, uno de los principales objetivos de la estática es la obtención de ESFUERZOS CORTANTES, FUERZA NORMAL, FUERZA D TORCION Y MOMENTO FLECTOR  a lo largo de una pieza, que puede ser desde una viga de un puente o los pilares de un rascacielos.
Su principal característica es que ocupan solo una casilla de memoria , por lo tanto una variable simple hace referencia a un único valor a la vez dentro de este grupo de datos se encuentra :enteros ,reales, caracteres ,boleados ,enumerados y subrangos (los últimos no existen en algunos lenguajes de programación).
Es aquella que dura la ejecución de un programa su valor no cambia.
Por ejemplo:
                    Listas, vectores; matrices; pilas; colas y listas enlazadas.
El tamaño ocupado en la memoria  se define ante de que el programa se ejecute y no puede modificarse dicho tamaño. Es decir su valor no cambia a la hora de la ejecución.


ESTRUCTURA DINAMICA

No tiene las limitaciones o restricciones en el  tamaño  de memoria ocupada que son propias de las estructuras estáticas.
Mediante el uso de un tipo de datos especifico, denominado puntero, es posible construir estructuras de datos dinámicas que no son soportadas por la mayoría de los lenguajes, pero en aquellos que si tienen estas características ofrecen soluciones eficaces y efectivas en la solución de problemas complejos.
Se caracteriza por el hecho de que con un nombre se hace referencia a un grupo de casillas de memoria. Es decir un dato estructurado tiene varios componentes.
Es aquella que durante la ejecución de un programa su valor puede cambiar.
En la que no tiene limitaciones en el tamaño de la memoria. Esta estructura su valor puede cambiar durante la ejecución de un programa.

EJEMPLO Nº1
Todos los segmentos de recta dirigidos que se muestran en esta figura son equivalentes.
Cualquiera de ellos es una representación gráfica del vector. El segmento dirigido en rojo es la representación convencional de tal vector

Ejercicio, utilizando tipos simples de datos
Se tienen las calificaciones de un grupo de 50 alumnos.
Se necesita saber cuántos alumnos tienen una calificación superior al promedio del grupo.
Algoritmo 1
DOBLE LECTURA
{Este algoritmo resuelve el problema planteado en el ejemplo 1, por medio de una doble lectura}
{I y CONT son variables de tipo entero. AC, PROM y C son variables de tipo real}
1.   hacer AC = 0 e I = 1
Leer calificación I (C)
Hacer AC = AC + C e I = I+1
2.   Repetir mientras (I<= 50)
3.   {Fin del ciclo del paso 2}
{Como se necesita decir cuántos alumnos obtuvieron una calificación superior al promedio, se deberá volver a leer las 50 calificaciones para poder comparar cada una de ellas con el promedio}
Hacer CONT = 0 e I = 1
4.   Hacer PROM = AC / 50
Leer calificación I (C)
1.   Si C> PROM entonces
Hacer I = I + 1
5.   Repetir mientras (I<=50)
6.   {Fin del ciclo del paso 5}
7.   Escribir CONT
Algoritmo 2.
 MUCHAS VARIABLES
{Este algoritmo resuelve el problema planteado en el ejemplo 1, utilizando múltiples variables}
{I y CONT son variables de tipo entero. AC, PROM y C son variables de tipo real}
1.   {Las calificaciones correspondientes a los 50 alumnos}
Hacer AC = C1 + C2 + C3 +.....+C50
PROM = AC / 50 y CONT = 0
2.   Leer C1, C2, C3,....C50
Hacer CONT = CONT + 1
3.   Si C1 > PROM entonces
4.   {Fin del condicional del paso 2}
5.   Si C2> PROM entonces
6.   {Fin del condicional del paso 4}
...
100.    Hacer CONT = CONT + 1
101.    Si C50 > PROM entonces
102.    {Fin del condicional del paso 100}
103.    Escribir CONT
En la solución planteada en el algoritmo 1, el usuario del algoritmo debe ingresar dos veces el conjunto de datos.
Esto resulta totalmente molesto y además ineficiente.
En la solución planteada en el algoritmo 2, se manejan 50 variables en memoria.
Esta solución presenta el inconveniente de que el manejo de las variables puede tornarse incontrolable, si el número de las mismas crece considerablemente.

Además algunos pasos especificados se repiten ya que no pueden generalizarse.

estructura

INTRODUCCION ESTRUCTURA ESTRUCTURA DE DATOS Estructura de Datos Estáticas : Son aquellas en las que el tamaño ocupado...