Sie sind auf Seite 1von 14

1

ESTRUCTURAS
CRISTIAN ARTURO SUAREZ
SUAREZ
ANDRES PREZ MUNIVE
PROGRAMACIN
UIS
2016

CONTENIDO
1. QU ES UNA ESTRUCTURA?
2. ESTRUCTURAS EN PROGRAMACIN
3. CLASIFIACIN DE ESTRUCTURAS
4. MOTIVACIN
5. TIPOS DE ESTRUCTURA
6. VARIABLES DEL TIPO ESTRUCTURAS
7. OPERACIN SOBRE ESTRUCTURAS COMPLETAS
8. ESTRUCTURAS Y APUNTADORES
9. ESTRUCTURAS AUTOREFERENCIANTES

1. QUE ES UNA ESTRUCTURA ?

Laestructura(dellatn
structra) es la disposicin
y orden de las partes dentro
de un todo. Tambin puede
entenderse
como
un
sistema
de
conceptos
coherentes enlazados, cuyo
objetivo es precisar la
esencia
del
objeto
de
estudio.
3

2. ESTRUCTURAS EN PROGRAMACI

Una estructura es un tipo de


dato compuesto que permite
almacenar un conjunto de
datos de diferente tipo. As,
nuestra primera experiencia
con
estructuras
comienza
desde el momento mismo en
que usamos
en nuestros
programas variables de tipos
primitivos (char, int, float, etc).
4

3. CLASIFICACIN DE ESTRUCTURAS
TIPO ESCALAR
Tipos escalares estndar: Enteros, Reales, Carcter, Booleano.
Otros tipos escalares: Enumerados, Void, Apuntadores

TIPO ESTRUCTURADOS

Arreglos
Sartas
Estructuras (struct)
Uniones (unin)
Archivos (FILE)
Programacin orientada a objetos (POO) (C++)

Estos tipos de datos facilita el desarrollo de aplicaciones informticas


como sistemas acadmicos de instituciones educativas, sistemas de
inventarios de empresas comerciales, sistemas de nominas entre
otros.

4. MOTIVACIN
Los sistemas de informacin tienen como fin describir los elementos
de inters central en una aplicacin particular. Dichos elementos
pueden ser artculos de un inventario o personas, a las que se le
llaman entidades y se describen mediante atributos.
NOMBRE

CODIGO

ESTUDIAN
TE

FECHA DE
NACIMIENT
O

PROMEDI
O
6

4. MOTIVACIN
Para manejar con ms facilidad y eficacia los atributos de la entidad.
Las estructuras permiten crear unidades de datos que constan de
campos de diversos tipos de datos y que pueden referenciarse en un
nombre colectivo. Para nuestro caso, la entidad estudiante se puede
crear siguiendo este modelo de estructura.
Nombre

Fecha
nacimien
to

Lugar
origen

Cdigo

Carrera

Nivel

Crditos
cursados

Crditos
aprobad
os

Promedi
o
acumula
do

Por contraste con el uso de estructuras, manejar la lista de clase


utilizando solamente arreglos requiere manejar una coleccin de
vectores (cada atributo de la entidad); para nuestro caso sera as:
Nombre

Codigo

FechNac

LugOri

Carrera

Nivel

CredCur

CredApr

PromAcu

Nombre[j]

Codigo[j]

FechNac[j]

LugOri[j]

Carrera[j]

Nivel[j]

CredCur[j]

CredApr[j]

PromAcu[j
]

5. TIPOS DE ESTRUCTURAS
Es un modelo de una unidad de datos que se compone de un nmero
fijo de elementos o campos los cuales pueden ser diferentes tipos de
datos. Las formas sintcticas de un tipo estructura se hace usando
cualquiera
las siguientes
formas sintcticas:
a) Typedef de
struct
{lista_de_campos}
nombre_tipo_estructura:
b) Struct nombre_tipo_estructura {lista_de_campos}
Donde:
Typedef anuncia definicin nombre para un tipo de datos.
Struct especifica que el nuevo tipo es un tipo de estructura.
nombre_tipo_estructura es el nombre que se da al nuevo tipo de
estructura:
lista_de_campos= Seccion de estructura;
Donde:
Seccion de estructura: nombre_tipo lista_de_variables
Nombre_tipo: Identificador del tipo de datos de campo
Lista_de_variables: variable1, variable2, variable3,
8

6. VARIABLES DE TIPO ESTRUCTURAS


Una variable de tipo estructura es una unidad de datos construida
conforme aun modelo o tipo de datos estructura; se crea mediante una
declaracin de variable.

DECLARACIN CLSICA DE VARIABLES :


Un efecto de estas declaraciones es asignar a cada variable un espacio
de memoria acorde con el tipo de la variable. Es importante recordar
que esta figura corresponde al modelo que el programador maneja en
su mente para describir las estructuras de datos.

6. VARIABLES DE TIPO ESTRUCTURAS

REFERENCIA A CAMPOS DE UNA VARIABLE :


Nos permite definir la variable en la estructura que utilizara, siendo
tambin especificada en una misma estructura, para esto utilizamos la
siguiente notacin:
nombre_de_variable_de_tipo_estructura.identificador_de_cam
po
Ejemplo:
Dia_independencia.dia,
dia_independencia.mes,
dia_independencia_agno;
UnEstudiante.nombre,
UnEstudiante.fecha_nacimiento.agno,
UnEstudiante.nivel, UnEstudiante.prom_acumulado.
10

7. OPERACIONES SOBRE CAMPOS


DE VARIABLES DE TIPO
ESTRUCTURA
Las operaciones que
pueden ejecutarse sobre un campo de una
variable de tipo estructura son las operaciones soportadas por el
mismo tipo de datos en dicho campo.

RACIONES SOBRE ESTRUCTURAS COMPLE


a. Asignacin de Estructura a Estructura: Es valida entre
estructuras del mismo tipo de datos; su realizacin conlleva el
copiado de valores campo por campo.
b. Paso de Estructuras como parmetros: Es posible usara
variables de tipo estructura como parmetros de funciones. Cuando
el parmetro es una variable ordinaria de tipo estructura,
dependiendo del llamado (valor o referencia) se requerir de un
apuntador o no.
11

8. ESTRUCTURAS Y APUNTADORES
Es un acceso a los campos de una
estructura, el cual permite que un
campo definido pueda acceder a los
datos de otro campo en la misma o
diferente estructura.
Este se declara anteponiendo el
smbolo * al nombre de la variable en
una declaracin
de datos de tipo estructura.
Se pueden
notaciones:

aplicar

las

siguientes

a. (*variable_apuntador).nombre_del_c
ampo;
b. Variable_apuntador>nombre_del_campo

12

ESTRUCTURAS AUTOREFERENCIANT
Es un tema fundamental para el manejo de estructuras dinmicas como
pilas, listas entrelazadas y arboles. Para estudiarlo se requiere del
manejo de apuntadores y variables apuntadas.
En estos casos, un conjunto de objetos del mismo tipo, estn
relacionadas entre s mediante punteros contenidos en ellos mismos, de
forma que basta conocer la raz del rbol o principio de la lista, para
poder acceder a todo el conjunto. En ocasiones, si tales listas son
doblemente enlazadas, es posible entrar en cualquier nodo y recorrer la
totalidad del conjunto en cualquier sentido. Esta es la razn del
apelativo "auto-referenciadas".

13

GRACIAS!

14