Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/02/2005, 15:22
Riskbreaker
 
Fecha de Ingreso: enero-2005
Mensajes: 10
Antigüedad: 19 años, 4 meses
Puntos: 0
Cómo escribir dos matrices para leerlas por ficheros.

Wenas de nuevo!!

A ver mi problema es el siguiente. Tengo que hacer que mi programa lea dos matrices por ficheros y que las multiplique y muestre el resultado. Entonces, siguiendo el consejo de un compañero, saqué esto:

Código:
     import java.io.*;

public class ProductodeMatrices
{
	 void leer(String fichero, int[][] m1, int[][] m2,int nf,int nc) throws Exception
	{
		BufferedReader L=new BufferedReader(new FileReader(fichero));
		String linea;
		
		for (int fila=0; fila<nf; fila++)
			for(int columna=0; columna<nc; columna++)
			{
				linea=L.readLine();
				m1[fila][columna]=Integer.parseInt(linea);
			}
		for (int fila=0; fila<nf; fila++)
			for(int columna=0; columna<nc; columna++)
			{
				linea=L.readLine();
				m2[fila][columna]=Integer.parseInt(linea);
			}
	}
	  
	void multiplica(int[][] m1,int[][] m2, int[][] res,int nf,int nc)
	{
		int cont;
		
		for (int fila=0; fila<nf; fila++)
		{
			for(int columna=0; columna<nc; columna++)
			{
				cont=0;
				for(int i=0;i<nc;i++)
				{
					cont+=m1[fila][i]*m2[i][columna];
				}
				res[fila][columna]=cont;
			}
		}
	}
	
	void escribir(int[][] n,int nf,int nc)
	{
		for (int fila=0; fila<nf; fila++)
		{
			for(int columna=0; columna<nc; columna++)
			{
				System.out.print(n[fila][columna]+"  ");
			}
		  System.out.println("");
		}
		System.out.println("");
	}
	
	public static void main ( String [] args) throws Exception
	{
		BufferedReader in=new BufferedReader(new InputStreamReader(System.in));

		ProductodeMatrices objeto = new ProductodeMatrices();
		int[][] m1 = new int[4][4];
		int[][] m2 = new int[4][4];
		int[][] res = new int[4][4];
		
    objeto.leer("datos.txt",m1,m2,4,4);
    objeto.multiplica(m1,m2,res,4,4);
    objeto.escribir(m1,4,4);
    objeto.escribir(m2,4,4);
    objeto.escribir(res,4,4);
	}
}
Mi problema es que quien me ayudó no me especificó de qué forma tengo que escribir las matrices en el .txt. Y ante esta maraña me cuesta bastante averiguarlo. ¿Alguien me podría echar una mano? Muchas gracias!!

P.D: El programa está totalmente perfecto y sin errores por si alguien tiene alguna duda con alguno similar ;).

Última edición por Riskbreaker; 24/02/2005 a las 15:24