En esta ocasión les comparto un algoritmo que permite llenar una matriz de 5 x 5 y almacenar la diagonal principal en un vector
«Hacer un algoritmo que llene una matriz de 5 x 5 y que almacene la diagonal principal en un vector. Imprimir el vector resultante.«
Haz clic aquí para suscribirte a mi canal
Hacer un algoritmo que llene una matriz de 5 x 5 y que almacene la diagonal principal en un vector.
Bien como ya es costumbre, vamos a explicar el funcionamiento de este algoritmo, entonces lo primero que hacemos es ponerle un nombre.
Algoritmo detarea
Declaramos las siguientes variables.
Definir f,c,matriz,vector Como Entero
Colocamos el tamaño a la matriz y al vector.
Dimension matriz[5,5],vector[5]
Anidamos dos ciclos “PARA”
para f = 1 Hasta 5 Con Paso 1 Hacer
para c = 1 Hasta 5 Con Paso 1 Hacer
En cada bucle generamos un numero aleatorio entre 1 y 9, y lo almacenamos en el vector.
matriz(f,c) = azar(9) + 1
A la función azar le sumamos 1 para descartar el numero cero.
FinPara
FinPara
Nuevamente anidamos dos ciclos “PARA”
para f = 1 Hasta 5 Con Paso 1 Hacer
para c = 1 Hasta 5 Con Paso 1 Hacer
En cada bucle vamos mostrando en pantalla los elementos de la matriz, utilizando la función sin saltar, para que los números se muestren en una solo línea
Escribir matriz(f,c),» » Sin Saltar
Evaluamos si la variable f es igual a la variable c.
si f == c Entonces
Si la condición se cumple, quiere decir que estamos en uno de los elementos de la diagonal principal, por lo tanto la ingresamos en el vector.
vector(f) = matriz(f,c)
FinSi
FinPara
Escribir » «
FinPara
Utilizamos un ciclo que se repite 5 veces.
para f = 1 Hasta 5 Con Paso 1 Hacer
En cada bucle mostramos en pantalla los elementos del vector, que en pocas palabras serían los elementos de la diagonal principal.
Escribir vector(f)
FinPara
FinAlgoritmo
Aquí puedes ver el funcionamiento de este algoritmo.
Bien amigos esta es la solución de este algoritmo, les comparto el código fuente, espero les guste y más que nada que les pueda ser de utilidad, un saludo y nos vemos en la próxima entrega.