Sie sind auf Seite 1von 15

UNIVERSIDAD NACIONAL AUTONOMA DE

MEXICO

PROGRAMACION DE ALGORITMOS, SISTEMAS Y


ESTRUCTURAS DE DATOS

ARREGLOS y MATRICES

Para la implementacin de sistemas de software


se requiere cualquiera de las siguientes
estructuras:

Cadenas
Estructuras de control
Funciones
Arreglos (arrays)
Registros
Pilas, colas
Archivos
Bases de Datos

LOS DATOS A PROCESAR PUEDEN SER:


SIMPLES
Ocupan solo una casilla de memoria. (enteros, reales, caracteres, booleanos).
Ejem.-

567

ESTRUCTURADOS.- Hacen referencia a un grupo de casillas de memoria


-Arreglos o vectores, archivos, rboles, registros, Bases de Datos, etc.

ESTRUCTURA DE DATOS ( ARREGLOS )


ARREGLOS O VECTORES.
ESTRUCTURADOS.- Hacen referencia a un grupo de casillas de memoria
Es una coleccin finita, homogenea y ordenada de elementos
Finita.- Indica el nmero mximo
Homogenea.- Son del mismo tipo (entero, reales, caracteres)
Ordemada.- Llevan un rden consecutivo a traves de un ndice
Ejem.-

A=

34
(0)

45
(1)

12
(2)

05
(3)

93
(4)

Datos
Indices

ESTRUCTURA DE DATOS ( ARREGLOS )


ARREGLOS O VECTORES.
ESTRUCTURADOS.- Hacen referencia a un grupo de casillas de memoria
Los ndices hacen referencia a los componentes (datos) en forma individual.
Ejem.-

A=

En forma individual.-

34
(0)

45
(1)

A[2]=

12

Cuanto vale A[1], A[4] ?

12
(2)

05
(3)

93
(4)

Datos
Indices

ESTRUCTURA DE DATOS ( ARREGLOS )


OPERACIONES CON ARREGLOS O VECTORES.

Las operaciones bsicas con Arreglos son:


Lectura de un arreglo
Despliegue de datos de un arreglo
Llenado de un arreglo
Ordenacion de un arreglo
Bsqueda de datos en un arreglo

ESTRUCTURA DE DATOS ( ARREGLOS )


LLENADO/LECTURA DE UN ARREGLO
Pseudocodigo:
Dame los 10 datos ?
PARA i desde 0 hasta 10 incrementa
LEE A[i].

Codigo en C o C++
printf ("Dame los 10 datos");
for (i=0; i<10; i++)
{
scanf ("%d", &valor [i]);
}

ESTRUCTURA DE DATOS ( ARREGLOS )


DESPLIEGUE DE UN ARREGLO Y OPERACIONES CON SUS
COMPONENTES
Pseudocodigo:
PARA i desde 0 hasta 10 incrementa
Inicio
DESPLIEGA Valor, Indice + 1, valor
SUMA los valores del arreglo
termina

Codigo en C o C++
for (i=0; i<10; i++)
{
printf ("Valor %d = %d\n", i+1, valor [i]);
suma += valor [i];
}

ESTRUCTURA DE DATOS ( ARREGLOS )


PRACTICA (1):
A) HACER UN PROGRAMA (tablas1.cpp) EN C o C++ QUE
PIDA EL NUMERO Y DESPLIEGUE LA TABLA DE
MULTIPLICAR QUE LE CORRESPONDA.

ESTRUCTURA DE DATOS ( ARREGLOS )


PRACTICA (2):
A) HACER UN PROGRAMA (ProgArreg.cpp) EN C o C++ QUE
PIDA EL PROCESO PARA N CALIFICACIONES Y LOS
DATOS DESPLEGANDO AL FINAL SU PROMEDIO.

1.12.- ESTRUCTURA DE DATOS ( ARREGLOS )


ARREGLOS MULTIDIMENCIONALES:
Un vector es un array unidimensional, es decir, slo utiliza un
ndice para referenciar a cada uno de los elementos. Su
declaracin ser:
tipo nombre [tamao];
Una matriz es un array multidimensional. Se definen igual que
los vectores excepto que se requiere un ndice por cada
dimensin. Su sintaxis es la siguiente:
tipo nombre [tamao 1][tamao 2]...;
Una matriz bidimensional se podra representar grficamente
como una tabla con filas y columnas.

1.12.- ESTRUCTURA DE DATOS ( ARREGLOS )

ARREGLOS MULTIDIMENCIONALES:
Ejem.- Una matriz de 2X3 (2 filas por 3 columnas) se inicializa en C/C++
como:
int matriz[2][3] = {
{ 20,50,30 },
{ 4,15,166 }
};
Otra manera es llenar el arreglo mediante una instruccin FOR anidada

ESTRUCTURA DE DATOS ( ARREGLOS ) Prueba este programa .!


/* Matriz bidimensional. */
#include <stdio.h>
#include <conio.h>
main() /* Rellenamos una matriz */
{
int x,i,numeros[3][4]; /* rellenamos la matriz */
printf("Dime los valores de matriz 3X4\n");
for (x=0;x<3;x++)
for (i=0;i<4;i++)
scanf("%d",&numeros[x][i]);
/* visualizamos la matriz */
for (x=0;x<3;x++)
for (i=0;i<4;i++)
printf("%d",numeros[x][i]);
getch();
}

1.12.- ESTRUCTURA DE DATOS ( ARREGLOS )

int numeros[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
quedaran asignados de la siguiente manera:
numeros[0][0]=1
numeros[1][0]=5
numeros[2][0]=9

numeros[0][1]=2
numeros[1][1]=6
numeros[2][1]=10

numeros[0][2]=3
numeros[1][2]=7
numeros[2][2]=11

numeros[0][3]=4
numeros[1][3]=8
numeros[2][3]=12

ESTRUCTURA DE DATOS ( ARREGLOS )


PRACTICA (3):HACER UN PROGRAMA DE UNA MATRIZ DE 3x4 QUE
MUESTRE LA SIGUIENTE SALIDA:
Anlisis de calificaciones:
[0]

[1]

[2]

[3]

Estudiantes [0]

10

Estudiantes [1]

10

Estudiantes [2]

10

Calificacion mas baja: 5


Calificacion mas alta: 10
El promedio de la calificacion del estudiante 0 es 8.25
El promedio de la calificacion del estudiante 1 es 7.75
El promedio de la calificacion del estudiante 2 es 8.25

Das könnte Ihnen auch gefallen