Documente Academic
Documente Profesional
Documente Cultură
ARREGLOS BIDIMENSIONALES
1.3INICIALIZACIN DE UN ARRAY:
Se deben asignar valores a los elementos del arreglo antes de utilizarlos, tal
como se asignan valores a variables. Para asignar valores a cada elemento del
arreglo de enteros matriz_ejemplo, se puede escribir:
matriz_ejemplo [0,0] <- 15;
matriz_ejemplo [0,1] <- 25;
matriz_ejemplo [1,0] <- 30;
matriz_ejemplo [1,1] <- 35;
matriz_ejemplo [2,0] <- 8;
matriz_ejemplo [2,1] <- 5;
Ejemplo #1: Pseudocdigo para inicializar un arreglo de 3 filas y 4
columnas a 1.
Solucin #1:
Proceso inicializar_bidi
Definir matriz_ejemplo,fila,columna como entero;
Dimension matriz_ejemplo[3,4];
Para fila<-0 Hasta 2 Con Paso 1 Hacer
Para columna<-0 Hasta 3 Con Paso 1 Hacer
matriz_ejemplo[fila,columna] <- 1;
Escribir Sin Saltar matriz_ejemplo[fila,columna]," ";
FinPara
Escribir " ";
FinPara
FinProceso
1.4OPERACIONES QUE SE PUEDEN REALIZAR EN UNA MATRIZ:
Se puede acceder a los elementos de arrays multidimensionales de igual forma
que a los elementos de un array unidimensional. La diferencia reside en que en
los elementos bidimensionales deben especificarse los ndices de la fila y la
columna.
El formato general para asignacin directa de valores a los elementos es:
Insercin de elementos:
3
Extraccin de elementos:
<Variable> = <nombre array>[ndice_fila,ndice_columna];
Ejemplo 2: Algoritmo que encuentre e imprima la transpuesta de una matriz.
La transpuesta de una matriz se obtiene al escribir las filas de la matriz como
columnas y las columnas como filas.
Proceso Matriz_transpuesta
Definir MAT,TMAT,nFilas,nColumnas,fila,columna como entero;
Escribir 'Numero de filas de la matriz ';
Leer nFilas;
nColumnas<-nFilas;
Dimension MAT[nFilas,nColumnas]; //Matriz Original
Dimension TMAT[nColumnas,nFilas]; //Almacenara la matriz
transpuesta
//Se piden los datos de la matriz
Para fila <-0 Hasta nFilas-1 Con Paso 1 Hacer
Para columna <-0 Hasta nColumnas-1 Con Paso 1 Hacer
Escribir 'Ingrese el elemento [', fila, ', ', columna, '] ' ;
Leer MAT[fila, columna]; //se almacena el elemento
TMAT[columna,fila]<-MAT[fila,columna]; //Se copia el
elemento
FinPara
FinPara
Escribir "MATRIZ TRANSPUESTA";
Para fila<-0 Hasta nFilas-1 Con Paso 1 Hacer
Para columna<-0 Hasta nColumnas-1 Con Paso 1 Hacer
Escribir Sin Saltar TMAT[fila,columna]," ";
FinPara
Escribir "";
FinPara
Ejemplo 3: Escribir un pseudocdigo que lea un array de N*M elementos y que
guarde 0
FinSi
Escribir Sin Saltar matriz_ejemplo[fila,columna]," ";
FinPara
Escribir "";
FinPara
resultante.
Solucin #5:
Proceso diagonal
Definir matriz,f,c como Entero;
Dimension matriz[3,3];
Para f<-0 Hasta 2 Hacer
Para c<-0 Hasta 2 Hacer
Si f = c Entonces
matriz[f,c] <- 1;
Sino
matriz[f,c] <- 0;
FinSi
Escribir Sin Saltar matriz[f,c]," ";
FinPara
Escribir "";
FinPara
FinProceso
EJERCICIOS PROPUESTOS:
Autoevaluacin:
1.Segn lo explicado, cuales son para usted las ventajas de utilizar
arreglos
2.Cul es la sintaxis de declaracin de un arreglo?
3.Qu hace el compilador cuando se declara un arreglo?
4.Explique, qu es un ndice?
5.De acuerdo al siguiente trozo de cdigo, diga si se produce o no un error
y porque.
Dimension arreglo[5];
arreglo[13]<-3;
6.De acuerdo al siguiente trozo de cdigo, diga si se produce o no un error
y si lo se produce diga cul es la solucin.
Dimension arreglo1[5];
Dimension arreglo2[5];
// ...
arreglo2 <- arreglo1;