Estructuras De Datos
-
Upload
danilo-jaramillo -
Category
Technology
-
view
2.532 -
download
0
description
Transcript of Estructuras De Datos
Estructuras de datos
• Datos estáticos• Conjunto de elementos del mismo tipo de
dato• No se modifica su tamaño en tiempo de
programación• Declaración– Nombre de la variable: Arreglo[tamaño] tipo de
dato
2
Estructuras de datos
• Contenidos– Arreglos o matrices– Arreglos de una
dimensión– Arreglos
multidimensionales
2 3 4 5 6 7
2 3 4 5 6 7
8 9 3 5 7 4
6 7 1 1 4 3
3
• Arreglos– Colección de datos del
mismo tipo– Un nombre único– Indicador de posición
que los diferencia 2 9 4 15 6 27
Estructuras de datos
Mat
31 32 33 34 35 36
2 13 4 45 6 7
8 9 53 5 37 4
26 7 100 11 4 3
MatRes1 2 3 4 5 6
4
• Arreglos unidimensionales o vectores
Estructuras de datos
2 9 4 15 6 27
Mat
1 2 3 4 5 6
Mat[1] = 2Mat[2] = 9Mat[3] = 14Mat[4] = 15Mat[5] = 6Mat[6] = 25
5
Definición:Inicio
Mat: Arreglo[10] entero………
fin
Lectura Mat: Arreglo[10] entero…..leer n_e // numero de elementos
for (i = 1, i <= n_e,i++)leer Mat[i]
endfor
Presentar Mat: Arreglo[10] enetero….. for (i = 1, i <= n_e,i++)
presentar Mat[i]endfor
Recorrer Mat: Arreglo[10] enetero…..
for (i = 1, i <= n_e,i++)Mat[i] mat[i]*2
endfor…..
6
inicio Mat Arreglo [10] entero// ingresar numero de elementosimprimir “ingrese numero de elementos”leer n_e// llenar la matriz for (i = 1, i <= n_e,i++)
leer Mat[i]endfor // proceso for (i = 1, i <= n_e,i++)
If (residuo(mat[i]/2) = 0) then presentar “el numero”,mat[i], es parendif
endfor // presentar la matriz for (i = 1, i <= n_e,i++)
imprimir Mat[i]endfor
fin
7
• Arreglos multi-dimensionales
Estructuras de datos
31 32 33 34 35 36
2 13 4 45 6 7
8 9 53 5 37 4
26 7 100 11 4 3
MatRes
MatRes[1,1] = 2MatRes[2,4] = 5MatRes[3,2] = 7MatRes[1,6] = 7MatRes[2,1] = 8 MatRes[3,5] = 4
8
Definición:Inicio
Arreglo MatRes[10][10] entero……
fin
LecturaMat Arreglo [10][10] entero…..leer n_f // numero de filasleer n_c // numero de columnas
for (i = 1, i <= n_f,i++) for (i = 1, i <= n_c,i++)
leer Mat[i][j] endfor endfor
PresentarMat Arreglo [10][10] entero….. for (i = 1, i <= n_f,i++) for (i = 1, i <= n_c,i++)
presentar Mat[i][j] endfor endfor
RecorrerMat Arreglo [10][10] entero…..
for (i = 1, i <= n_f,i++) for (i = 1, i <= n_c,i++)
Mat[i][j] 0 endfor endfor…..
9
inicioMat Arreglo [10][10] entero// ingresar numero de elementospresentar “ingrese numero de filas”leer n_fpresentar “ingrese numero de filas”leer n_c// llenar la matriz for (i = 1, i <= n_f,i++) for (j = 1, i <= n_c,i++)
leer Mat[i][j] endforendfor // proceso for (i = 1, i <= n_f,i++) for (j = 1, i <= n_c,i++)
if primo(Mat[i][j]) then presentar “numero es primo”endif
endforendfor // presentar la matriz for (i = 1, i <= n_f,i++) for (j = 1, i <= n_c,i++)
leer Mat[i][j] endifendif
inicio
metodo primo(entero num) logicad = 2lim = num / 2p =verdaderowhile (d < num) if residuo(num/d) == 0
p falsod lim
endif d d + 1endwhilereturn p
finfunc
10
Ejercicios
• Ordenar un vector• Buscar elementos repetidos en un vector• Ordenar una matriz de dos dimensiones• Buscar elementos repetidos en una matriz dos
dimensiones• Multiplica dos matrices
11
Inicio // ordenar una matrizArreglo Mat[10] entero// ingresar numero de elementospresentar “ingrese numero de elementos”leer n_e// llenar la matrizfor (i = 1, i <= n_e,i++)
leer Mat[i]endfor // proceso de ordenacion for (i = 1, i <= n_e,i++)
for (i = 1, i <= n_e,i++)si mat[i] < mat[j] aux mat[i] mat[i] mat [j] mat[j] aux endfor
endfor endfor // presentar la matriz for (i = 1, i <= n_e,i++)
presentar Mat[i] endfor
fin