Matrices en Java

Un array en Java puede tener más de una dimensión. El caso más general son los arrays bidimensionales también llamados matrices o tablas.
La dimensión de un array la determina el número de índices necesarios para acceder a sus elementos.
Los vectores que hemos visto en otra entrada anterior son arrays unidimensionales porque solo utilizan un índice para acceder a cada elemento.
Una matriz necesita dos índices para acceder a sus elementos. Gráficamente podemos representar una matriz como una tabla de n filas y m columnas cuyos elementos son todos del mismo tipo.
La siguiente figura representa un array M de 3 filas y 5 columnas:
A los elementos del array se accede mediante la fila y columna donde están situados.
A efectos prácticos, cuando trabajamos con arrays bidimensionales podemos pensar en una tabla como la que se muestra en la imagen anterior donde los elementos están distribuidos en filas y columnas.
Pero en realidad una matriz en Java es un array de arrays.
La disposición real en memoria del array anterior la podemos representar gráficamente de esta forma:

M es el nombre del array.
M contiene la dirección de memoria (referencia) de un array unidimensional de 3 elementos.
Cada elemento de este array unidimensional contiene la dirección de memoria de otro array unidimensional.
Cada uno de estos últimos arrays unidimensionales contiene los valores de cada fila de la matriz.
M.length indica el número de filas de la matriz. En este ejemplo el número de filas (M.length) es 3.
M[i].length indica el nímero de columnas de la fila i. En este ejemplo la longitud de cada fila del array (M[i].length) es 5.
Para acceder a cada elemento de la matriz se utilizan dos índices. El primero indica la fila y el segundo la columna. 
M[0][2] = 9;  //asigna el valor 9 al elemento situado en la primera fila (fila 0) y tercera columna (fila 2).
No dedemos olvidar que la primera fila de una matriz es la fila 0 y la primera columna de una matriz es la columna 0.
CREAR MATRICES EN JAVA
Se crean de forma similar a los arrays unidimensionales, añadiendo un índice.
Por ejemplo:
matriz de datos de tipo int llamado ventas de 4 filas y 6 columnas:
int [][] ventas = new int[4][6];
matriz de datos double llamado temperaturas de 3 filas y 4 columnas:
double [][] temperaturas = new double[3][4]; 
En Java se pueden crear arrays irregulares en los que el número de elementos de cada fila es variable. Solo es obligatorio indicar el número de filas.
Por ejemplo:
int [][] m = new int[3][];
crea una matriz m de 3 filas.
A cada fila se le puede asignar un número distinto de columnas:
m[0] = new int[3];
m[1] = new int[5];
m[2] = new int[2];
Gráficamente podemos representar la disposición real en memoria del array anterior así:

INICIALIZAR MATRICES
Un array es un objeto, por lo tanto, cuando se crea, a sus elementos se les asigna automáticamente un valor inicial:
  • 0 para arrays numéricos
  • '\u0000' (carácter nulo) para arrays de caracteres
  • false para arrays booleanos
  • null para arrays de String y de referencias a objetos
También podemos dar otros valores iniciales al array cuando se crea.
Los valores iniciales se escriben entre llaves separados por comas.
Los valores que se le asignen a cada fila aparecerán a su vez entre llaves separados por comas.
El número de valores determina el tamaño de la matriz.
Por ejemplo:
int [][] numeros = {{6,7,5},{3, 8, 4}, {1,0,2}, {9,5,2}};
se crea la matriz numeros de tipo int, de 4 filas y 3 columnas, y se le asignan esos valores iniciales.
Asignando valores iniciales se pueden crear también matrices irregulares.
Por ejemplo la instrucción:
int [][] a = {{6,7,5,0,4}, {3, 8, 4}, {1,0,2,7}, {9,5}};
crea una matriz irregular de 4 filas. La primera de 5 columnas, la segunda de 3, la tercera de 4 y la cuarta de 2.
RECORRER MATRICES
Para recorrer una matriz se anidan dos bucles for. En general para recorrer un array multidimensional se anidan tantas instrucciones for como dimensiones tenga el array.
Ejemplo de recorrido de una matriz en Java:
Programa que lee por teclado números enteros y los guarda en una matriz de 5 filas y 4 columnas. A continuación muestra los valores leídos, el mayor y el menor y las posiciones que ocupan.
import java.util.Scanner;

public class Bidimensional2 {

    public static void main(String[] args) {

        final int FILAS = 5, COLUMNAS = 4;
        Scanner sc = new Scanner(System.in);
        int i, j, mayor, menor;
        int filaMayor, filaMenor, colMayor, colMenor;

        int[][] A = new int[FILAS][COLUMNAS]; //Se crea una matriz de 5 filas y 4 columnas

        //Se introducen por teclado los valores de la matriz
        System.out.println("Lectura de elementos de la matriz: ");
        for (i = 0; i < FILAS; i++) {
            for (j = 0; j < COLUMNAS; j++) {
                System.out.print("A[" + i + "][" + j + "]= ");
                A[i][j] = sc.nextInt();
            }
        }

        //Mostrar por pantalla los valores que contiene la matriz
        System.out.println("valores introducidos:");
        for (i = 0; i < A.length; i++) { 
            for (j = 0; j < A[i].length; j++) {
                System.out.print(A[i][j] + " ");
            }
            System.out.println();
        }

        //Calcular el mayor valor de la matriz y el menor.
        //Obtener las posiciones que ocupan el mayor y el menor dentro de la matriz 
        mayor = menor = A[0][0]; //se toma el primer elemento de la matriz como mayor y menor
        filaMayor = filaMenor = colMayor = colMenor = 0;

        //mediante dos bucles for anidados recorremos la matriz
        //buscamos el mayor, el menor y sus posiciones
        for (i = 0; i < A.length; i++) {  //para cada fila de la matriz
            for (j = 0; j < A[i].length; j++) { //para cada columna de la matriz
                if (A[i][j] > mayor) {
                    mayor = A[i][j];
                    filaMayor = i;
                    colMayor = j;
                } else if (A[i][j] < menor) {
                    menor = A[i][j];
                    filaMenor = i;
                    colMenor = j;
                }
            }           
        }

        //Mostrar por pantalla el mayor elemento de la matriz,el menor y las posiciones que ocupan           
        System.out.print("Elemento mayor: " + mayor);
        System.out.println(" Fila: "+ filaMayor + " Columna: " + colMayor);
        System.out.print("Elemento menor: " + menor);
        System.out.println(" Fila: "+ filaMenor + " Columna: " + colMenor);
    }
}
Ejemplo de recorrido de una matriz irregular en Java:
Programa que crea una matriz irregular de enteros. El número de filas se pide por teclado. Para cada fila se pedirá el número de columnas que tiene. El número mínimo de filas debe ser 2 y el número mínimo de columnas debe ser 1. A continuación asigna a cada elemento de la matriz un número aleatorio del 1 al 5. Finalmente muestra por pantalla el contenido de la matriz.

import java.util.Random;
import java.util.Scanner;

public class MatrizIrregular {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        Random rnd = new Random();
        int filas, columnas;

        do { //lectura de las filas
            System.out.print("Introduce número de filas: ");
            filas = sc.nextInt();
            if (filas < 2) {
                System.out.println("Valor no válido");
            }
        } while (filas < 2);

        //se crea el array solo con el número de filas
        //el número de columnas se deja vacío 
        //el número de columnas para cada fila lo indicaremos después
        int[][] A = new int[filas][];

        //para cada fila pedimos el número de columnas que tendrá
        for (int i = 0; i < A.length; i++) {
            do {
                System.out.print("Número de columnas para la fila " + i + ": ");                                  
                columnas = sc.nextInt();
                if (columnas < 1) {
                    System.out.println("Valor no válido");
                }
            } while (columnas < 1);
            //Se crea un array del tamaño indicado y se le asigna a la fila
            A[i] = new int[columnas];
        }

        //A cada elemento de la matriz se le asigna un valor aleatorio del 1 al 5                                 
        for (int i = 0; i < A.length; i++) {
            for (int j = 0; j < A[i].length; j++) {
               A[i][j] = rnd.nextInt(5) + 1;
            }
        }

        //Se muestra el contenido de la matriz
        System.out.println("Contenido del array:");
        for (int i = 0; i < A.length; i++) {
            for (int j = 0; j < A[i].length; j++) {
                System.out.print(A[i][j] + " ");
            }
            System.out.println();
        }
    }
}

Puedes encontrar más ejercicios para seguir practicando en este libro.


Contiene ejercicios resueltos sobre los conceptos básicos del lenguaje java: Declaración de variables, literales, tipos de datos, operadores, crear expresiones algebraicas correctas, etc.

Las soluciones de los ejercicios incluyen una explicación detallada sobre cómo se ha resuelto.

El contenido del libro es una recopilación de ejercicios realizados en mis clases de Programación en los ciclos formativos de grado superior Desarrollo de aplicaciones web y Desarrollo de aplicaciones multiplataforma.

73 comentarios:

  1. Muy interesante lo de las matrices irregulares.

    ResponderEliminar
  2. Muy completa e instructiva la entrada. Gracias, me ha resuelto muchas dudas y enseñado cosas que no sabía.

    ResponderEliminar
    Respuestas
    1. Gracias, me alegro mucho de que te haya servido de ayuda

      Eliminar
    2. interesante muchas gracias...

      Eliminar
  3. necesit0 ayuda de hacer un programa que pida 5 calificaciones de 5 alumnos y que despliegue el nombre de los 5 alumnos y sus 5 calificaciones de cada uno y su promedio cada uno(esto lo tengo k hacer con matriz [6][7]

    ResponderEliminar
  4. muchas gracias me ayudo mucho

    ResponderEliminar
  5. tarea hacer un programa que controle un estacionamiento de cinco pisos para
    20 autos cada piso padra recibir carros color azul rojo y gris.
    nesesitamos saber si el estacionamiento esta lleno o vacio
    si el estacionamiento estalleno ya no deve res¿civir carros
    si tiene alminos algun lugar en cualquier piso deve de dejar de recibir carros
    se puede hacer una auditoria en cualquier momento de cuantos carros hay en cada piso deque color son
    por piso
    y cuantos carros hay en total y de que color son.
    una matriz de 5 por 20

    ResponderEliminar
    Respuestas
    1. yo tb necesito ayuda en un ejercicio similar a este :/

      Eliminar
  6. Hola, como estas? me prodrías ayudar ... no sé si sabes como crear dibujos en java, mas directamente transiciones? es en una clase de automatas que recibo en la U

    ResponderEliminar
  7. esta muy buena, y quisiera saber como intercambia un elemento ingresado por el usuario, y eliminar una fila o columna, gracias, mi corre es cht_2012@live.com

    ResponderEliminar
  8. Buenas tardes,
    Buenisimo tu artuculo!!
    ...tienes ejemplos de multiplicacion de matrices irregulares?

    ResponderEliminar
  9. Te Amo has salvado mi vida!!!!!! gran post!!!

    ResponderEliminar
  10. Muy buen blog y muy bien explicado. Sigue así que me has sido de gran ayuda

    ResponderEliminar
  11. hola buenas noches tengo un problema tengo una matriz de dos dimensiones y quisiera sabe como puedo almacenar una variable la posicion en la que se encuentra un dato y que cada vez que llame a la variable pase al siguiente elemento de su posicion

    ResponderEliminar
  12. mi cuestion es la siguiente: dado un ejemplo como el que pusiste con codigo, en mi caso noto que la carga se hace por columnas y no asi por filas. Como logro que sea al reves? Por cierto, muy buen blog! +10

    ResponderEliminar
    Respuestas
    1. Hola Pablo, si quieres recorrer un array bidimensional por columnas solo tienes que cambiar el orden de los for que usas:

      for (j = 0; j < COLUMNAS; j++) {
      for (i = 0; i < FILAS; i++) {
      System.out.print(A[i][j] + " ");
      }
      System.out.println();
      }
      Saludos y gracias por el comentario

      Eliminar
    2. XFAS NECESITO UN PROGRAMA URGENTE
      PROGRAMA QE ME PRESENTE LOS NUMEROS DE CADA MES SOLO CON SWITCH IF ELSE XFAS ES PARA UN EXAMEN

      Eliminar
  13. buenas tardes, mi problema es que la matriz ya le tengo escrita en un archivo excel con extension csv y lo que quiero es leerla para posteriormente poder trabajar con ella, alguien me podria indicar que codigo es el que hay que usar en este caso

    ResponderEliminar
  14. Hola me gusta como explicaste lo de los arrays. Es muy buena información. Solo quisiera preguntar algo, si tengo un arreglo bidimensional de 3 X 4 y quisiera imprimir los valores pero por columnas, como tendría que colocar el for? es decir el for inicia revisando los valores de las filas...y por ello imprime en ese orden pero quisiera que imprimiera por columnas...si pudieras ayudarme con eso lo agradecería de verdad.

    ResponderEliminar
    Respuestas
    1. Hola Yumek, para recorrer e imprimir por columnas solo tienes que cambiar el orden de los for:
      for (j = 0; j < COLUMNAS; j++) {
      for (i = 0; i < FILAS; i++) {
      System.out.print(A[i][j] + " ");
      }
      System.out.println();
      }
      Saludos

      Eliminar
  15. Hola, muy buena explicacion... pero sabes como hacer los recorridos de columnas y filas utilizando solo 1 for?

    ResponderEliminar
  16. saludos cordialmente y muchas gracias por la informacion me servira de mucho, y buena explicacion sigue adelante

    ResponderEliminar
  17. amigos por favor traten de ayudarme este ejercico tanto en java y algoritmos ;
    18. Una empresa periodística publica 8 revistas. Se registra para cada una de ellas:
    Número de revista ( De 1 a 8)
    Cantidad de ejemplares vendidos
    Valor de venta de la revista
    Monto cobrado por publicidad
    Gastos de edición
    Se pide emitir un listado ordenado de mayor a menor por la ganancia o pérdida con el siguiente formato:

    N° revista Ejemplares
    vendidos Recaudado
    Por ventas Cobrado
    por publicidad Gastos
    de edición Ganancia o pérdida
    x xxx xxx Xxx xxx xxx

    ResponderEliminar
    Respuestas
    1. Pues una matriz de 8 por 7, 1 fila por revista, con 7 columnasm revista mas las entradas que das suman 5 columnas, otra columan 6 para el calculo y una 7 para numerarlas por codigo de mayor a menor por logica cargas en esta ultima columna el peso relativo 1 si es mayor a todas y 8 si es la menor comparando llenas el resto. sin nececidad de ordenar imprimis del 1 al 8 por esa ultima columna....

      Eliminar
  18. Me ayudan con la siguiente tarea:

    Una empresa de ventas a domicilio maneja 10 artículos diferentes y cuenta con 25 vendedores.
    En un arreglo de 25x10 se tienen almacenadas las cantidades de cada artículo vendidas por cada vendedor. Además, los precios de cada artículo están almacenados en un vector de tamaño 10. Se desea elaborar un algoritmo para imprimir lo siguiente:
    a) La cantidad de dinero recopilado por cada vendedor. b) El número del vendedor que recopiló la mayor cantidad de dinero. c) El número del artículo más vendido (entre todos los vendedores). d) El total de vendedores que no vendieron ningún artículo número ocho. e) Realizar un procedimiento de carga inicial para los datos en dicho arreglo. f) Realizar un entorno gráfico adecuado al usuario.

    ResponderEliminar
    Respuestas
    1. Aquí te dejo esto espero que te ayude aunque hallan pasado casi 3 años

      public class CALSESTRINGXD {

      /*Una empresa de ventas a domicilio maneja 10 artículos diferentes y cuenta con 25 vendedores.
      En un arreglo de 25x10 se tienen almacenadas las cantidades de cada artículo vendidas por cada vendedor.
      Además, los precios de cada artículo están almacenados en un vector de tamaño 10.
      Se desea elaborar un algoritmo para imprimir lo siguiente:
      a) La cantidad de dinero recopilado por cada vendedor.
      b) El número del vendedor que recopiló la mayor cantidad de dinero.
      c) El número del artículo más vendido (entre todos los vendedores).
      d) El total de vendedores que no vendieron ningún artículo número ocho. e)
      Realizar un procedimiento de carga inicial para los datos en dicho arreglo.
      f) Realizar un entorno gráfico adecuado al usuario.*/
      public static void main(String[] args) {
      Scanner x = new Scanner(System.in);
      String Articulos[] = {"toalla", "freazada", "tijeras", "almohadas", "licuadoras", "refrigeradoras", "estractorar", "platano", "mandaria", "naranjas"};
      double datos[][] = new double[5][10];
      double precio[] = new double[10];
      double acumulador[] = new double[5];
      double mayor_acu = 0;
      double mas_vendido[] = new double[10];
      double no_venta = 0;
      for (int i = 0; i < datos.length; i++) {

      for (int j = 0; i < datos[i].length; j++) {

      System.out.println("ingrese el precio del producto " + Articulos[j]);
      precio[j] = x.nextDouble();

      System.out.println("ingrese la cantidad vendidad por cada vendedor : " + Articulos[i]);
      datos[i][j] = x.nextDouble();
      acumulador[i] += precio[i] * datos[i][j];
      mas_vendido[i]+=datos[i][j];

      }
      }
      double mayor =acumulador[0];
      double mayor_vendido=mas_vendido[0];
      for (int i = 1; i < datos.length; i++) {
      if(acumulador[i]>mayor){
      mayor=acumulador[i];
      }
      if(mas_vendido[i]>mayor_vendido){
      mayor_vendido=mas_vendido[i];
      }
      }
      for (int j = 0; j < datos.length; j++) {
      for (int k = 0; k < datos[j].length; k++) {
      if(datos[j][7]==0){
      System.out.println("El Vendedor N°"+j+"no vendio ningun articulo"+datos[j][7]);
      no_venta++;
      }
      }
      }
      for (int i = 0; i < datos.length; i++) {
      System.out.println(" la cantidad de dinero recopilada cada vendedor"+acumulador[i]);
      }
      System.out.println("el numero del vendedor que recopilo mas dinero es :"+mayor);
      System.out.println("el numero del articulo mas vendido "+mayor_vendido);
      System.out.println(" el total de vendedores que no vendieron ningun alrticulo del N°"+no_venta);


      }
      }



      Eliminar
  19. Me ha sido de gran utilidad, pero he encontrado un ejemplo en el que muestran una calcula de matriz en java con una simple pero funcional interfaz grafica, espero que tambien les sirva.

    ResponderEliminar
  20. buenas disculpe es URGENTE, como hago que yo introduzca mi matriz bidimensional, pero yo controlando si se desea ingresar el proxima arreglo ejm: ingreso arrg[0][n] y pregunte si quiero ingresar la siguiente que seria arr[1][n],arr[2][n] y asi hasta que yo le diga que no quiero continuar quedando el tamaño de filas de la matriz el usuario quiera???

    ResponderEliminar
  21. hola quisiera saber si este algoritmo puede ser modificado para utilizar un radom en ves de un scanner y me podrías explicar como es posible hacerlo

    ResponderEliminar
  22. me podrían ayudar con esta tarea por favor?

    Primeros intentos de descifrar Enigma Criptoanalistas británicos y de distintos países empezaron a
    interceptar mensajes procedentes de la máquina Enigma, pero sin posibilidad alguna de descifrarlos,
    hasta que en 1931 Hans-Thilo Schmidt, pasó a los aliados documentación de Enigma, que les
    permitiría crear una réplica. Ello no significaba aún poder descifrar los mensajes, pero sí el reto de
    saber cómo encontrar la clave.
    Las características del cifrado es:

    TEXTO ORIGINAL: A B C D E F G H I J K
    • Posición Enigma S S+1 S+2 S+3 S+4 S+5
    • Texto en claro B C D E F G
    • Posición Enigma S’ S’+1 S’+2 S’+3 S’+4 S’+5
    • Texto cifrado C D E F G H
    La interfaz gráfica de los ingresos deberá realizarse, a través de:

    a) Desarrollar main (menú principal) de ingreso de palabras codificadas o decodificadas.
    b) Desarrollar cada clase con sus métodos y atributos, para codificar S.
    c) Desarrollar cada clase con sus métodos y atributos, para codificar S ‘ .
    d) Desarrollar cada clase con sus métodos y atributos, para decodificar S.
    e) Desarrollar cada clase con sus métodos y atributos, para decodificar S ‘ .

    ResponderEliminar
  23. Como se podria recorrer una matrizen diagonal? De arriba a la izquierda a abajo a la derecha, por ejemplo. Es decir en vez de recorrer la matriz en lineas rectas izq-drcha, hacerlo en diagonales.

    ResponderEliminar
    Respuestas
    1. colocando las coordenadas segun como las quieras recorrer, por ejemplo si tu matriz es de 5x5 la recorrerías de arriba a la izquierda asi; [0][0],[1][1],[2][2],[3][3],[4][4],[5][5] como hacerlo? en el ciclo de recorrido podrías decir:

      int fil=0,Col=0;
      for(int c=0;c<5;c++)
      {
      mat[fil][col]=Integer.parseInt(JOptionPane.showInputDialog("Ingresar dato en fila "+f+ " Columna "+c));
      fil++;
      col++;
      }

      de esta manera cada que entres al ciclo vas a aumentar las dos coordenadas en +1 dando el esperado [0][0],[1][1],[2][2],[3][3],[4][4],[5][5]

      Eliminar
  24. a[i] = a[a[i]] como se hace esto?

    ResponderEliminar
  25. Ayuuuda porfa, tengo una matriz de (8x8) tengo que ir recorriendo la matriz e imprimir 8 reinas a lo largo de ella, pero las reinas no tienen que marcarse ni horizontal, ni vertical ni diagonalmente..

    ResponderEliminar
    Respuestas
    1. Suscribete en mi canal de youtube: https://www.youtube.com/channel/UC7Hhiorbhz4b8zPkGSHtVug
      y si necesitas ayuda en algo puedes dejarmelas en este blog: https://programandobonito.blogspot.com.co/2017/03/codigo.html
      Y hare tutorial sobre ello

      Eliminar
  26. HOla, me dirijo a Enrique específicamente, pero cualquiera que pueda ayudarme se lo agradecería. Yo también poseo un blog, aunque es de otro royo, y me gustaría saber qué tengo que hacer para tener en el mío la misma barra que aparece a la derecha de la página con los botos de facebook, tweeter, G+, etc..? Gracias!

    ResponderEliminar
  27. Hola amigos wi :v, me ha servido de mucho pero necesito mucha comuncación para realizar un plan de mejoramiento, estaré viendo este comentario para ver tu respuest

    ResponderEliminar
  28. ayuuuda!!!
    me encargaron de tarea crear un arreglo Bidimensional que permita almacenar en columnas separadas tanto el Nombre como el
    Apellido.

    ResponderEliminar
  29. Me ha ayudado, gracias pura vida!

    ResponderEliminar
  30. Hola
    me podrian ayudar con esta tarea porfa? he intentado de todo y no lo he logrado

    Elabore un programa que dibuje un edificio.
    La cantidad de pisos y la cantidad de habitaciones por piso la debe definir el usuario.
    Cada habitacion debe tener luz apagada.
    Al hacer clic en la pantalla, el sistema debe preguntar qué habitación desea ingresar
    si la luz esta apagada, encenderla.
    si esta encendida, apagarla.

    ResponderEliminar
  31. Excelente , funciona a la perfección.
    Saludos

    ResponderEliminar
  32. umm interesante (no lei nada :yaoming)

    ResponderEliminar
  33. como es el c[odigo para este ejercicio ??
    No lo logro..



    Genere una matriz de n posiciones, que debe solicitar al usuario. Dicha matriz debe ser llenada con letras que al usuario se le solicitarán. Debe validar que el usuario no digite las vocales que pertenecen a su nombre y debe volver a solicitar la letra. Por ejemplo, en mi caso STEVEN, no debo permitir la letra E. Con dicha matriz debe realizar lo que se indica a continuación: (5pts)
    1. Buscar las en donde se encuentran las consonantes, y si pertenecen a su nombre debe sustituirlas por un carácter especial de su preferencia. Al final debe indicarle al usuario que consonante fue sustituida y en qué posición. (10pts)
    2. En relación con lo mencionado anteriormente debe mostrar la matriz inicial, la matriz ordenada, la matriz sustituyendo las vocales por caracteres especiales y por último la lista de vocales y posiciones, que fueron sustituidas

    ResponderEliminar
  34. No sirve esta pagina, mejor vayan al rincon del vago

    ResponderEliminar
  35. Al maestro Panchito del cbtis142 le pidieron que hiciera un reporte detallado del desempeño del club de lectura, por lo que te pide que le ayudes desarrollando un programa que haga lo siguiente:

    Debe pedir el nombre de los 13 alumnos que forman el club de lectura y almacenarlos en un arreglo unidemensional
    Una vez que se han capturado los nombres, deberá pedir por cada alumno, las 3 calificaciones correspondientes a su proyecto de lectura mediante teclado, estas deberán almacenarse en una matriz (arreglo bidimensional).
    Cuando ya se ha capturado todo, el programa deberá mostrar la lista de alumnos y su promedio de calificaciones (promedio de las 3 calificaciones)
    Puedes crear los métodos que consideres necesarios.

    ResponderEliminar
  36. puedes editar el programa de arriba quitandole los array? es que en el liseu aun no hemos dado arrays pero la profe quiere que lo hagamos , grasias

    ResponderEliminar
  37. Alguien que me ayude con lo siguiente:
    Crear una matriz cuadrada de tamaño n, llénala con números aleatorios, luego elimina la ultima columna de la matriz de tamaño n-1, con los valores de la primera matriz. Con los valores de la columna eliminada llena un vector de tamaño n. Muestra los datos de ambas matrices y el arreglo.

    ResponderEliminar
  38. Un Sistema Informático para una pequeña empresa tecnológica debe manejar información
    acerca de clientes, productos y pedidos. Hasta el momento se registran los siguientes datos
    en documentos varios:
    • Para cada cliente: Número de cliente, Nombres, Apellidos, DNI, Dirección de envío,
    Línea de crédito. Cada Línea de crédito tiene un Saldo y un Límite de crédito (depende
    del cliente, pero en ningún caso debe superar los 3.000 soles).
    • Para cada producto: Número de producto, Fábrica que lo distribuye, Existencias de
    ese producto, Descripción del producto, Precio unitario. Un producto puede
    considerarse como Software o Hardware, dependiendo el producto se almacena la
    versión / tipo de licencia o número de serie, respectivamente.
    • Para cada pedido: Cada pedido tiene una cabecera y el cuerpo del pedido. La cabecera
    está formada por los datos del cliente. En el cuerpo del pedido se especifican la
    información del producto, cantidad solicitada y monto total.
    Además, se ha determinado que se debe almacenar la información de las fábricas: Número
    de la fábrica y Teléfono de contacto.
    Se pide realizar lo siguiente:
    1. Realice las clases en capas.
    2. Cree el código necesario para representar las relaciones (asociación/herencia).
    3. Realice la interfaz gráfica e impleméntelo para acceder los datos del cliente y
    producto. La salida será la solicitud del pedido

    ResponderEliminar
  39. Escribir un Programa que halla la:
     Suma de filas
     Suma de Columnas y
     Suma de diagonal
    De una matriz de N x M, si son iguales;
    Pero si son diferentes solo hallará la:
     Suma de filas y
     Suma de columnas

    ResponderEliminar
  40. s tengo una matriz q vengo itroduciendo los datos en enteros y quiero sacar un promedio el promedio es double como cambio los valores de la matriz suma que esta en int a una matriz double llamada promedio

    ResponderEliminar
  41. estecomentariohasidoeliminadoporelautor

    ResponderEliminar
  42. Saludos, alguien de ustedes ha implementado el juego de lápiz y papel Timbiriche??

    ResponderEliminar
  43. Un programa de arreglos bidimensional que me muestre el cuadrado de una matriz de 3x4, en la cual, los valores de la matriz serán 12 números, los que sean; asimismo, de estos números, sacarán el cuadrado (NO EL DOBLE, ESTO ES, ELEVARÁN A LA POTENCIA 2) y la visualizarán en otro arreglo donde me muestre la matriz resultante de los cuadrados de los números que contiene la matriz. Asimismo, también visualizarán la matriz original.


    Es urgente por favooor

    ResponderEliminar
  44. Un programa de arreglos bidimensional que me muestre el triple de una matriz de 3x4, en la cual, los valores de la matriz serán silos que gusten ; asimismo, de estos números, sacarán el triple (NO MULTIPLICARÁN LA MATRIZ POR 3, ES ELEVAR EL NUMERO A LA POTENCIA 3) y la visualizarán en otro arreglo donde me muestre la matriz resultante de los triples de los números que contiene la matriz. Asimismo, también visualizarán la matriz original.

    ResponderEliminar
  45. Que buen contenido, pude entender el tema fácilmente.
    Pero.... Como haría si quería una matriz de n filas y 4 columnas?

    Porfavor alguien podría decirme.

    ResponderEliminar
  46. ayuda
    Crear y cargar una tabla de tamaño 10x10, mostrar la suma de cada fila y de cada columna,
    utilizando arreglos Bidimensionales.

    ResponderEliminar
  47. Hacer matriz de 5 x 5 x 5 y hacer que todas las diagonales tengas un valor de 1, de resto que todos los valores sean 0. ayuda por favor se me hace difícil hacer esta clase de matriz

    ResponderEliminar
  48. Hola a todos.

    Tengo una duda, en el ejemplo de la matriz, cuando muestra los datos por consola, a veces utiliza print y otras veces println.
    no tengo claro, porque lo hace así.

    Gracias.

    ResponderEliminar
  49. Me ayudan a hacer una matriz de 3x3 y Capturar los valores de la matriz

    ResponderEliminar
  50. Me ayudan con este ejercicio?
    /*Sea una matriz de caracteres de tamanio 12*30 de secuencias de caracteres digitos separadas por espacios.
    La matriz esta precargada (no implementar el metodo de carga), y ademas cada fila empieza y termina con uno o
    mas separadores espacios. Se pide realizar un programa que:
    _por cada fila, copie (si tiene) la secuencia central (central porque justo al medio del arreglo esta parte de
    esa secuencia) en un arreglo de caracteres de tamanio igual a la cantidad de elementos de
    la matriz (inicializado con espacios).
    A cada agregado en el arreglo se le debe agregar al final de la secuencia la vocal
    que mas se repite en la fila donde se encuentra la secuencia. El agregado en el arreglo se debe
    realizar de forma consecutiva de izquierda a derecha y sin separadores.

    ResponderEliminar
  51. ayuda
    Desarrolla un programa que almacene en un arreglo bidimensional los siguientes datos:



    Articulo

    Cantidad

    Precio Unitario

    Importe



    Después de almacenar los datos debe mostrar el siguiente ticket



    --------------------T i c k e t--------------------

    Cantidad Articulo PU Importe

    2 Frijol 10.00 20.00

    2 Frijol 10.00 20.00

    2 Frijol 10.00 20.00

    2 Frijol 10.00 20.00

    2 Frijol 10.00 20.00

    -----------------------------------------------------

    Total 100.00

    -----------------------------------------------------



    Debes emplear el manejo de excepciones

    ResponderEliminar
  52. Puedes declarar un array bidimensional de esta forma

    Digamos que sea un array de 2 X 2

    var nuevoArray = new Array(2);

    //En cada posición de nuevoArray guardamos un nuevo array

    nuevoArray[0] = new Array(2);
    nuevoArray[1] = new Array(2;

    Y para acceder a los datos de un array bidimensional puedes hacerlo de esta manera

    //Para acceder a la fila 0, columna 1

    nuevoArray[0][1];

    By: Yesid Casarrubia Delgado

    ResponderEliminar
  53. por favor necesito ayudaa.
    Se necesita imprimir las horas, minutos y segundos de todo un día. Utilizar arrays
    multidimensionales.

    ResponderEliminar
  54. Pregunta: ¿cómo se puede realizar: suma, resta y multiplicación en la matrices utilizando la herramienta IDE netbeans ingresado por teclado?, dar 10 ejemplos, usar matrices.

    ResponderEliminar
  55. hola necesito de su ayuda

    ResponderEliminar
  56. me podrian ayudar con esto porfavor con una sintaxis basica:

    crear un programa que nos permita la gestion de una matriz de 4x4 de numeros enteros que incialmente esta vacia, nos pide acer un menu con las sig opciones:
    ingresar valores
    imprimir valores de la matriz
    sumar una columna (solicitada por el usuario)
    sumar una fila (solicitada por el usuario)
    sumar diagonal principal
    sumar diagonal inversa
    El promedio de todos los vectores
    salida

    ResponderEliminar
  57. Elabore un programa en java que utilice arreglos dinámicos y lo llene con nombres de animales marinos.  Imprima el vector.

    Elabore un programa en java que solicite las dimensiones de una tabla y cargue la misma con nombres de personas.

    Podrían ayudarme 🥲☹️
    Es una tarea de la universidad

    ResponderEliminar