You are on page 1of 4

Array Bidimensional Un array bidimensional (tambin llamado tabla o matriz) es un array con dos ndices.

Se declaran de igual manera que los arrays de una dimensin. Declaracin de un array bidimensional El nombre del array Rango permitido Tipo del array Ejemplo: A (5,5) numrico Para localizar o almacenar un valor en el array se deben especificar dos posiciones o subndices, uno para la fila y otro para la columna. Imprimir una matriz Para escribir una matriz, se debe hacer referencia tanto a la fila como a la columna. As para una matriz A(3,4). Desde i= 1 hasta i=3 Desde j= 1 hasta j=4 Imprimir A(i, j) Fin-desde Fin-desde Ejemplo: Calcular el promedio de cada estudiante de una lista de veinticinco alumnos de la clase de informtica con notas en cuatro asignaturas. Programa Promedio Notas (25,4) numerico i,j : numerico Suma, Prom : numrico Suma=0 Desde i = 1 hasta i= 25 imprimir Notas del estudiante: , i Imprimir Ingrese las notas Suma = 0 Desde j = 1 hasta j=4 Leer Notas(i,j) Suma = Suma + Notas (i,j) Fin-desde Prom = Suma/4 Imprimir La nota promedio del estudiante ,i , es , Prom Fin-desde End. En pantalla se vera de esta manera: Notas del estudiante 1 Ingrese las notas 2 3 4 3 La nota promedio del estudiante 1 es 3

Notas del estudiante 2 Ingrese las notas 5 4 3 1 La nota promedio del estudiante 2 es 3,3 .. y asi sucesivamente hasta el alumno 25. EJERCICIOS SOBRE MATRICES. 1- Escribir un programa que busque el menor y el mayor elemento ingresado en una matriz de m x n. 2- Escribir un programa que sume los elementos de cada fila de una matriz de m x n. 3- Escribir un programa que sume los elementos de cada columna de una matriz de m x n. 4- Escribir un programa que sume los elementos de la diagonal que va de derecha a izquierda en una matriz de m x n 5- Escribir un programa que copie los elementos de los bordes en sentido horario en una matriz de M x N en un vector resultante llamado v.

Inicio MATRIZ(M,N) numrico V(x) numrico x=1 Imprimir Ingrese las dimensiones de la matriz Leer M, N Imprimir Cargue los valores para la matriz!! Desde i=1 hasta i=m Desde j=1 hasta j=n Leer matriz(i,j) Fin desde Fin-desde i=1 Desde j=1 hasta j=N V(x) = matriz(i,j) x=x+1 Fin-desde j=N Desde i = 2 hasta i=M-1 V(x) = matriz(i,j) x=x+1 Fin-desde i=M Desde j = N hasta j= 1, dec. -1 V(x) = matriz(i,j) x=x+1 Fin-desde J=1 Desde i = M-1 hasta i = 2, dec. -1 V(x) = matriz(i,j) x=x+1 Fin-desde Fin- algoritmo

NMEROS ALEATORIOS RND La funcin RND devuelve un nmero (tipo decimal) al azar entre el rango de 0 y 1. Cada vez que se corra el programa, RND generar los mismos nmeros aleatorios, por lo que se requiere de un generador para que cada vez que se corra el programa los nmeros sean diferentes. Ej. Imprime nmeros al azar en el rango de 0 a 32 desde i = 1 hasta 10 imprimir INT (RND * (32 + 1)) findesde i END TIMER Esta funcin retorna los segundos transcurridos desde la media noche de la maquina. TIMER devuelve un valor real en el intervalo abierto entre 0 y 86400. Imprimir Han trascurrido; TIMER; segundos desde la media noche de la maquina Sentencia RANDOMIZE [n] Inicializa el generador de nmeros aleatorios a partir de una semilla (n). Si la semilla permanece constante durante el programa, los nmeros generados sern los mismos cada vez que se corra el programa. Esta sentencia se usa para generar nmeros aleatorios para la funcin RND. Para evitar que se atasquen los nmeros aleatorios, es muy comn el uso de la funcin TIMER para darle semillas diferentes a RANDOMIZE. Pero antes veamos el siguiente ejemplo: RANDOMIZE Imprimir "Un nmero al azar ", RND Como no utilizamos ninguna semilla para RANDOMIZE, preguntar por un nmero para iniciar el generador de nmeros aleatorios. Veamos este otro: RANDOMIZE 4 Imprimir "Un nmero al azar ", RND Como la semilla es siempre la misma en todo el programa, cada vez que este se corra, el nmeroal azar ser siempre el mismo. Por lo tanto si queremos nmeros que no se repitan debemos usar una semilla que cambie cada vez que se inicie el programa: RANDOMIZE TIMER Imprimir "Un nmero al azar ", RND Para obtener 50 nmeros diferentes de 1 al 100 haramos Desde i=1 hasta i =50 randomize timer A(i) = int (rnd*(100 + 1)) fin-desde Fin

You might also like