Matrices: En programación se denomina matriz, vector (de una sola dimensión) o formación (en inglés array)1 a una zona de almacenamiento contiguo que contiene una serie de elementos del mismo tipo, los elementos de la matriz.2 Desde el punto de vista lógico una matriz se puede ver como un conjunto de elementos ordenados en fila (o filas y columnas si tuviera dos dimensiones).
En principio, se puede considerar que todas las matrices son de una dimensión, la dimensión principal, pero los elementos de dicha fila pueden ser a su vez matrices (un proceso que puede ser recursivo), lo que nos permite hablar de la existencia de matrices multidimensionales, aunque las más fáciles de imaginar son los de una, dos y tres dimensiones.
Estas estructuras de datos son adecuadas para situaciones en las que el acceso a los datos se realice de forma aleatoria e impredecible. Por el contrario, si los elementos pueden estar ordenados y se va a utilizar acceso secuencial sería más adecuado utilizar una lista, ya que esta estructura puede cambiar de tamaño fácilmente durante la ejecución de un programa.1.- Matriz simétrica: He aquí un ejemplo de lo que es una matriz simétrica:
2.- Matriz transpuesta: Aquí un ejemplo de lo que es:
3.- Ejercicios resueltos :
Ejemplo numero 1:
public static void main( String args[ ]){
int [ ][ ]A ={{5,6,2,1,3},{1,2,3,4,5},
{6,7,8,9,0}};
/**
* Primero vamos a imprimir la matriz dada
*/ System.out.println(“La matriz dada es: “);
for(int i = 0; i < A.length; i++){
for(int j = 0; j < A[0].length; j++){
System.out.print(” ” + A[i][j] + ” “);
}
System.out.println();
}
/**Ahora podemos observar como la matriz anterior la cual es 3 X 5
* se convierte en una 5 x 3, es decir la filas se convierten en columnas
* y las columnas se convierten en filas. Lo que hacemos a continuación
* es intercambiar los for para imprimir de la manera que queremos.
*/ System.out.println(“La matriz transpuesta es: “);
for(int j = 0; j < A[0].length; j++){
for(int i = 0; i < A.length; i++){
System.out.print(” ” + A[i][j] + ” “);
}
System.out.println();
}
}
}
Ejemplo numero 2:
public class Transpuesta {
public static void main(String[] arg) {int x;
// int y;
Scanner s = new Scanner(System.in);
System.out.print("digite la dimencion de la matriz");
x = s.nextInt();
int m[][] = new int[x][x];
for (int i = 0; i < m.length; i++) {
for (int j = 0; j < m[0].length; j++) {
System.out.print("los valores de la matriz");
m[i][j] = s.nextInt();
}
}
System.out.println("matriz origunal");
for (int i = 0; i < m.length; i++) {
for (int j = 0; j < m[0].length; j++) {
System.out.print(m[i][j]);
}
System.out.println();
}
System.out.println("matriz transpuesta");
for (int i = 0; i < m.length; i++) {
for (int j = 0; j < m.length; j++) {
System.out.print(m[j][i]);
}
System.out.println();
}
}
}
No hay comentarios.:
Publicar un comentario