/**
 * Ejemplo de Arreglo Bidimensional
 * @author Gustavo De la Cruz Tovar
*/
class Arreglo2 {
/**
 * Crea un arreglo bidimensional de tamaño renglones x columnas
 * @param renglones numero de renglones del arreglo
 * @param columnas del arreglo
 * @return Matriz bidimensional
*/
    public static  int [] [] crear(int renglones,int columnas) {
       int [] [] matriz = new int[renglones][columnas];//crear matriz
       return matriz;
    }
/**
 * Llenar un arreglo bidimensional con el valor indicado, dicho arreglo no debe ser nulo
 * @param matriz el arreglo bidimensional, no debe ser nulo
 * @param valor El valor para llenar al arreglo
*/
    public static void llenar(int [][]matriz, int valor){
       for (int i=0;i<matriz.length;i++) //recorrer por renglones
         for (int j=0;j<matriz[i].length;j++)//recorrer por celdas
           matriz[i][j]=valor;
    }
/**
 * Imprimir un arreglo bidimensional a salida estándar, dicho arreglo no debe ser nulo
 * @param matriz el arreglo bidimensional, no debe ser nulo
*/
   public static void imprimir(int [][] matriz) {
       for (int i=0;i<matriz.length;i++) //recorrer por renglones
         for (int j=0;j<matriz[i].length;j++)//recorrer por celdas
           System.out.println(matriz[i][j]);
   }
/**
 * Dado un arreglo bidimensional, incrementa cada celda con el valor indicado por incremento
 * @param matriz el arreglo bidimensional, no debe ser nulo
 * @param incremento El valor usado para incrementar cada celda del arreglo
*/
   public static void incrementar(int [][] matriz, int incremento) {
       for (int i=0;i<matriz.length;i++) //recorrer por renglones
         for (int j=0;j<matriz[i].length;j++)//recorrer por celdas
              matriz[i][j]+=incremento;
   }
}