Descargar

Anuncio
Prácticas de Informática
Práctica 8:
Programación Orientada a Objetos
Definición de Tipos Abstractos de Datos
Objetivo de la práctica
El objetivo de esta práctica es la implementación de un tipo abstracto de datos con la clase Matriz.
Define la clase Matriz con los métodos (funciones y métodos especificados) y prueba la clase
implementada con el programa progMatriz.
import java.util.Scanner;
public class Matriz {
private int _filas;
private int _columnas;
private int [][] _m;
public Matriz (int[][] m)
public Matriz (int filas, int columnas)
public int getValAt(int fila, int columna)
public void setValAt(int fila, int columna, int valor)
public int getFilas()
public int getColumnas()
public int [] getFila(int fila)
public int [] getColumna(int columna)
public
private
String toString ()
boolean todosDistintos(int []m) //auxiliar mccudz
private static
int maximo(int [] m) //auxiliar mccudz
private static
int posMax(int []m) //auxiliar mccudz
public
boolean mccud ()
public static Matriz leeMatriz() //lee matriz cuadrada
public static Matriz leeMatriz(int dim) //lee matriz cuadrada
public static Matriz leeMatriz(int filas, int columnas)
public static Matriz producto (Matriz m1, Matriz m2)
public static Matriz suma (Matriz m1, Matriz m2)
public
Matriz transpuesta ()
public
void transponer ()
public
boolean simetrica()
public
boolean triangular()//ceros debajo de la diagonal prin.
}
Departamento de Informática e Ingeniería de Sistemas
Prácticas de Informática
public class progMat {
public static void main(String[] args){
int [][] mat_mccdu={{ 5, 6, 2,-4}, { 6, 7, 8, 3}, {10, 4,-5, 9}, { 4,-7, 1,12}};
int [][] no_mat_mccdu={{ 5, 6, 2,-4}, { 6, 7, 8, 3}, {10, 4,-5, 9}, { 4,-7, 12,1}};
int [][] ms={{1,2,3}, {2,1,4}, {3,4,5}};
int [][] mns={{1,2,3}, {7,1,4}, {3,4,5}};
int [][] mt={{1,2,3}, {0,1,4}, {0,0,5}};
Matriz
Matriz
Matriz
Matriz
Matriz
matriz_mccdu=new Matriz(mat_mccdu);
matriz_no_mccdu=new Matriz(no_mat_mccdu);
matriz_ms=new Matriz(ms);
matriz_mns=new Matriz(mns);
matriz_mt=new Matriz(mt);
System.out.println(matriz_mccdu);
if (matriz_mccdu.mccud()) System.out.println("Es mccud");
else System.out.println("No es mccud");
System.out.println(matriz_no_mccdu);
if (matriz_no_mccdu.mccud()) System.out.println("Es mccud");
else System.out.println("No es mccud");
System.out.println(matriz_ms);
if (matriz_ms.simetrica()) System.out.println("Es simetrica");
else System.out.println("No es simetrica");
System.out.println(matriz_mns);
if (matriz_mns.simetrica()) System.out.println("Es simetrica");
else System.out.println("No es simetrica");
System.out.println(matriz_mt);
if (matriz_mt.triangular()) System.out.println("Es triangular");
else System.out.println("No es triangular");
System.out.println(matriz_mns);
if (matriz_mns.triangular()) System.out.println("Es triangular");
else System.out.println("No es triangular");
System.out.println("suma Matrices");
System.out.println(matriz_mccdu);
System.out.println("MAS");System.out.println(matriz_no_mccdu);
System.out.println("IGUAL");
System.out.println(Matriz.suma(matriz_mccdu, matriz_no_mccdu));
System.out.println("producto Matrices");
System.out.println(matriz_mccdu);
System.out.println("POR");System.out.println(matriz_no_mccdu);
System.out.println("IGUAL");
System.out.println(Matriz.producto(matriz_mccdu, matriz_no_mccdu));
System.out.println("TRAPUESTA de");
System.out.println(matriz_mccdu);
System.out.println("IGUAL");
System.out.println(matriz_mccdu.transpuesta());
System.out.println("TRANPONER");
System.out.println(matriz_mccdu);
matriz_mccdu.transponer();
System.out.println("QUEDA");
System.out.println(matriz_mccdu);
}
}
Departamento de Informática e Ingeniería de Sistemas
Descargar