Como puedo sumar la fila de una matriz tridimensional en java

Sumar las filas de una matriz tridimensional y mostrar el resultado

1 respuesta

Respuesta
1

Sabes, hace mucho que no programaba que estuve investigando para ayudarte con esto ya que últimamente no he practicado la programación pero aún recordaba algo, por eso no pude responderte a tiempo! Aquí tienen la clase main con algunas funciones que te pueden ayudar en algo y espero que te sea de utilidad!

PD: No se a cuales filas te referías ya que una matriz tridimensional, tomando en consideración los ejes cartesianos, es decir, "X, Y, Z", interpretando que "Y" sea para columnas entonces, tome en perspectiva que "X, Z" son diferentes enfoques de filas en una matriz tridimensional, así que te dejo las dos sumatorias tanto de "X" como de "Z".

PD2: Realice el ejemplo con la captación de números aleatorios mediante la clase Random pero si gustas, en la parte donde se realiza la suma, puedes incorporar la clase Scanner para obtener los datos desde el teclado

Scanner scanner = new Scanner(System.in);

matriz[x][y][z] = scanner.nextInt();



import java.util.Random;

public class SumaFilas {
//Arreglo tridimencional de 3x3x3
int matriz[][][] = new int[3][3][3];
//Variable para sumas en X
int sumaX = 0, sumaZ = 0;
//Inicializador de números random
Random rnd = new Random();
//Cadena de texto para mostrar filas y su resultado
String resultado = "";
public SumaFilas() {
}
//Cargar datos - números aleatorios
public void CargarDatos() {
for (int x = 0; x < matriz.length; x++) {
for (int y = 0; y < matriz.length; y++) {
for (int z = 0; z < matriz.length; z++) {
matriz[x][y][z] = rnd.nextInt(10) + 1;
/*O puedes utilizar la Clase Scanner para la obtención de datos mediante el teclado
Scanner scanner = new Scanner(System.in);
matriz[x][y][z] = scanner.nextInt();*/
}
}
}
}

//Sumatoria de filas en X
public void SumafilasX() {
System.out.println("Sumatoria de filas en X");
for (int z = 0; z < matriz.length; z++) {
for (int y = 0; y < matriz.length; y++) {
for (int x = 0; x < matriz.length; x++) {
sumaX += matriz[x][y][z];
if (x <= 1) resultado += matriz[x][y][z] + "+";
else if (x == 2) resultado += matriz[x][y][z] + "=";
}
resultado += sumaX;
System.out.println(resultado);
resultado = "";
sumaX = 0;
}
System.out.println();
}
}
//Sumatoria de filas en z
public void SumaFilasZ() {
System.out.println("Sumatoria de filas en Z");
for (int x = 0; x < matriz.length; x++) {
for (int y = 0; y < matriz.length; y++) {
for (int z = 0; z < matriz.length; z++) {
sumaZ += matriz[x][y][z];
if (z <= 1) resultado += matriz[x][y][z] + "+";
else if (z == 2) resultado += matriz[x][y][z] + "=";
}
resultado += sumaZ;
System.out.println(resultado);
resultado = "";
sumaZ = 0;
}
System.out.println();
}
}
public static void main(String[] args) {
SumaFilas sm = new SumaFilas();
sm.CargarDatos();
sm.SumafilasX();
sm.SumaFilasZ();
}

}

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas