• Non ci sono risultati.

Definiamo una classe di utilità matrix.java per operazioni su matrici di interi così strutturata:

N/A
N/A
Protected

Academic year: 2021

Condividi "Definiamo una classe di utilità matrix.java per operazioni su matrici di interi così strutturata:"

Copied!
4
0
0

Testo completo

(1)

Esercizio: una classe per le matrici

Definiamo una classe di utilità matrix.java per operazioni su matrici di interi così strutturata:

Campi:

static final int default_rows = 5;

static final int default_columns = 5;

int[][] mat; // la matrice

int size_rows; // dimensione righe int size_columns; // dimensione colonne

Metodi: alcune operazioni di utilità per le matrici sono - prodotto di una matrice per una costante

- prodotto tra due matrici - somma di due matrici

- lettura di una matrice dallo standard input - stampa di una matrice

- verifica se una matrice è nulla o identica o diagonale sup/inf

Per esercizio completare la classe matrix.java. Usare i commenti javadoc!

(2)

La classe matrix (1)

import java.io.*;

public class matrix{

static final int default_rows = 5; // dimensioni di default static final int default_columns = 5;

int[][] mat; // la matrice

int size_rows; // dimensione righe int size_columns; // dimensione colonne

// post: costruisce una matrice con le dimensioni di default public matrix() {

mat = new int[default_rows][default_columns];

size_rows = default_rows;

size_columns = default_columns;

}

// post: costruisce una matrice [tot_righe x tot_colonne]

public matrix(int tot_righe, int tot_colonne) { ...

}

(3)

La classe matrix (2)

// post: esegue l'input della matrice dallo standard input public void input_matrix() {

int i,j;

InputStream in = System.in;

BufferedReader d = new BufferedReader(new InputStreamReader(in));

try {

for (i=0; i < size_rows; i++) {

for (j=0; j < size_columns; j++) {

System.out.print("riga " + i + " colonna " + j + " : ");

mat[i][j] = Integer.parseInt(d.readLine());

} }

} catch(Exception ex) {System.out.println("errore");}

}

NOTA: questo metodo

richiede di importare il

package java.io

(4)

La classe matrix (3)

// post: ritorna true se la matrice e' nulla public boolean is_zero() {...}

// post: ritorna true se la matrice e' identica public boolean is_identity() {...}

// post: ritorna "questa" matrice moltiplicata per la costante c public void const_mult(int c) {...}

// post: stampa a video "questa" matrice public void stampa_matrix() {...}

// Post: esegue il prodotto tra "questa" matrice e la matrice M // Se il prodotto non si puo' effettuare non fa nulla public void matrix_mult(matrix M) {...}

NOTA: questo metodo modifica

l’oggetto che lo richiama (non crea

un nuovo oggetto)

Riferimenti

Documenti correlati

Informazione semi-

Determinare per quali valori del parametro reale k∈ R il determinante delle seguenti matrici è nullo... Esercizi

L'istruzione break provoca l'uscita immediata dal ciclo (o da un'istruzione switch) in cui è

Crea un oggetto di tipo File File denominato denominato nome nome a partire dalla directory dir a partire dalla directory dir (descritta tramite una stringa)..

• L’assembler ha una semantica (significato delle istruzioni) descritta in termini delle operazioni eseguibili dal processore (semantica operazionale).. • I linguaggi di alto

[r]

[r]

PER ADDIZIONE ALGEBRICA ( O SOMMA ALGEBRICA) SI INTENDE L’OPERAZIONE CHE PRENDE IN CONSIDERAZIONE SIA LA SOMMA CHE LA DIFFERENZA. NB: OGNI NUMERO INTERO PUO’ ESSERE