Programación Estructurada

Anuncio
Programación Estructurada
PROGRAMACIÓN ESTRUCTURADA
Sesión No. 7
Nombre: Estructuras de datos
Contextualización
Cuando un programa suele ser muy extenso, un problema clásico de los
programadores es la exhaustiva definición de variables, que al tratarse de un
programa extenso, sobre algún problema en particular, suelen acabarse las
descripciones de las variables o los nombres de estas se repiten y se
sobrescriben por error.
Un método practico para definir bien un grupo de
variables para su implementación en alguna
acción especifica, es el modelo de estructura de
datos de arreglos.
Las estructuras de datos permitirán mantener un
código mas sano en cuanto a líneas código y
orden se refiere aun en lenguajes actuales,
incluyendo aquellos derivados del lenguaje de programación C.
1
PROGRAMACIÓN ESTRUCTURADA
Introducción al Tema
Las estructuras de datos han ayudado a los desarrolladores a mantener un
orden y coherencia en los datos que guardan una relación entre si, es importante
que comprendas su funcionamiento ya que con su implementación, podrás
optimizar códigos de programas especializados.
En el lenguaje C encontraras tres tipos de estructuras de datos, conocidas como
arreglos, que ayudan a optimizar el uso de memoria de un programa, disminuir
errores de sobrescritura etc.
En esta sesión aprenderás el concepto de dos tipos de estructuras, los arreglos
unidimensionales y los arreglos bidimensionales.
En la siguiente sesión, se retomara el tercer tipo de estructura conocido como
arreglos multidimensionales, pero primero deberás comprender los conceptos
básicos de los primeros dos tipos.
2
PROGRAMACIÓN ESTRUCTURADA
Explicación
Los arreglos son estructuras de datos que permiten almacenar datos al igual que
las variables, con la diferencia de que el grupo de datos almacenados en los
arreglos mantienen una estrecha relación entre si por su tipo de dato, es decir, la
información que se almacena en ellos pertenece al mismo tipo de dato (Int, Float,
Char etc.) lo que lo convierte en un conjunto de datos homogéneos.
Los arreglos son elementos ordenados por índices donde se puede almacenar
cualquier tipo de dato, previamente definido, cada elemento tiene una ubicación
determinada dentro del arreglo, los arreglos seleccionan una región en la
memoria donde se van a guardar los elementos que lo componen, el número de
elementos debe de ser un entero y van numerados con 0,1,2,… hasta el número
de elementos – 1, por ejemplo:
Así, podríamos decir que el valor del arreglo C en el índice 1 = 23
¿Cómo se diferencian los arreglos entre si?
3
PROGRAMACIÓN ESTRUCTURADA
4.1 Arreglos unidimensionales
Un arreglo de una dimensión es una lista de variables, todas de un mismo tipo a
las que se hace referencia por medio de un nombre común. Una variable
individual del arreglo se llama elemento del arreglo. Un arreglo unidimensional
es un tipo de datos estructurado que está formado de una colección finita y
ordenada de datos del mismo tipo.
En el lenguaje C los arreglos están íntimamente relacionados con los punteros.
Cuando nos referimos al valor de la expresión a[ i ], en C está diseñado para
entenderlo como: *((a)+(i)); es decir, el contenido que existe en la dirección del
puntero de a incrementando en i. Por este motivo el primer elemento de arreglo
es a[0].
Para declarar un arreglo en C se debe seguir la siguiente sintaxis:
En este ejemplo de creo un arreglo de 100 numeros enteros llamado
calificaciones.
Se debe tener cuidado al medir la longitud del arreglo, ya que al ser espacios de
memoria reservados, si no se utilizan los espacios de el arreglo, la memoria se
desperdicia.
4
PROGRAMACIÓN ESTRUCTURADA
¿Cómo llenar un arreglo?
Es aquí donde las estructuras repetitivas vistas en sesiones anteriores nos son
de gran utilidad.
Una de las estructuras mas urilizadas en lenguaje C es el ciclo repetitivo for,
implemnetnadose como se muestra en el siguiente exemplo:
#include<stdio.h>
void main(){
int a[10];
int i;
for(i=0; i<10; i++){
a[i]=i;
}
}
En este ejemplo se creo un arereglo llamado a de longitud 10, donde mediante el
siclo for se insertaron números del 0 al 9 quedando de la siguiente forma:
tambien se pueden inicializar de forma manual, como en el siguiente ejemplo:
int a[10]={0,1,2,3,4,5,6,7,8,9 };
Obteniendo el mismo resultado que en el caso anterior, sólo que a la forma
manual se le conoce como inicializacion de arreglo.
5
PROGRAMACIÓN ESTRUCTURADA
4.2 Arreglos bidimensionales
Los arreglos bidimensionales se usan para representar datos que pueden verse
como una tabla con filas y columnas, cada elemento contiene un valor y cada
dimensión representa una relación, observa la siguiente figura:
El mapeo de estos arreglos podría relacionarse con coordenadas cartesianas en
posiciones X,Y y se acceden de forma similar a los arreglos unidimensionales.
Para crear un arreglo bidimensional debenmos seguir la siguiente sintaxis:
6
PROGRAMACIÓN ESTRUCTURADA
Los arreglos bidimensionales tambien son conocidos como matrices, en lenguaje
C se extrae el valor de una como en el siguiente ejemplo:
#include <stdio.h>
int main()
{
int fila, columna;
int matriz[2][2];
for(fila=0; fila<2; fila++){
for(columna=0; columna<2; columna++){
printf(“%d”, matriz[fila][columna]);
}
}
}
7
PROGRAMACIÓN ESTRUCTURADA
Conclusión
Los arreglos son estructuras de datos que nos permiten organizar información en
conjuntos y sectores reservando espacio en memoria para garantizar su
almacenamiento y consulta.
El mantener la información bien organizada disminuye el riesgo de perdida de
información o inconsistencia de la misma por sobrescritura de variables.
Se recomienda la implementación de arreglos cuando se hace referencia a un
mismo tema y que necesiten almacenarse en un solo paquete de información,
(como en los ejemplos anteriores donde lo que se guardaban eran calificaciones).
En los arreglos bidimensionales se pueden almacenar relaciones de datos sobre
un tema común, por ejemplo, el número de lista de un alumno y su calificación,
lo cual permitiría una precisión superior al momento de extraer la información.
8
PROGRAMACIÓN ESTRUCTURADA
Para aprender más
En el siguiente video encontraras la explicacion grafica de cómo se utilizan los
arreglos unidimensionales y bidemensionales en lenguaje C
Bbidimensionales
https://www.youtube.com/watch?v=KrpUY3Bbiow
9
PROGRAMACIÓN ESTRUCTURADA
Actividad de Aprendizaje
Con la finalidad de reforzar los conocimientos adquiridos a lo largo de esta
sesión, ahora tendrás que realizar la siguiente actividad.
Instrucciones
 Escribe un programa donde se utilice un arreglo bidimensional en C
 Realiza la representación gráfica del arreglo
 Imprimir la pantalla ya que este escrito en C
 Convertir en imagen en formato JPG el programa realizado
 Convertir en imagen en formato JPG la representación gráfica del arreglo
 Subirlos a la plataforma de la asignatura
Esta actividad te ayudara a comprender la función de un arreglo en el lenguaje C,
así como su correcta utilización, lo cual te facilitara a entender las siguientes
sesiones.
Esta actividad representa el 5% de tu calificación y se tomará en cuenta lo
siguiente:
 Tus datos generales.
 Título.
 Un programa donde se utilice un arreglo bidimensional en C
 Representación gráfica del arreglo
 Ortografía y redacción.
 Referencias bibliográficas
10
PROGRAMACIÓN ESTRUCTURADA
Bibliografía
 Bronson, G; (2007), C++ para ingeniería y ciencias, México: Thomson.
 Cairo, O; (2006), Fundamentos de programación piensa en C, México:
Pearson Educación
 Gómez, A; (s/f), Introducción a la computación, México: Cengage
Learning.
 Páez, J; (2004), C y C++ de afán 2ª edición, Colombia: Universidad de
Antioquia.
11
Descargar