/* * A matrix data structure; rows and columns are numbered starting at ZERO * and the matrix contains doubles * * Author : Tom Kimber * */ import java.util.* ; class Matrix { Vector v = new Vector( 3 , 3 ) ; private int num_rows , num_cols ; public Matrix( int i , int j , double init_each_entry ) { num_rows = i ; num_cols = j ; Double val = new Double( init_each_entry ) ; for( int c = 0 ; c < num_rows * num_cols ; c++ ) { v.addElement( val ) ; } } public void setEntry( int row , int col , double d ) { int absPos ; absPos = row * num_cols + col ; Double D = new Double( d ) ; v.setElementAt( D , absPos ) ; } public double getEntry( int row , int col ) { int absPos ; absPos = row * num_cols + col ; Double D ; D = ( Double )( v.elementAt( absPos ) ) ; return D.doubleValue( ) ; } public void updateFromPanel( MatrixPanel pnl ) { for ( int i = 0 ; i < num_rows ; i++ ) { for ( int j = 0 ; j < num_cols ; j++ ) { setEntry( i , j , pnl.getValue( i , j ) ) ; } } } public int getNumRows( ) { return num_rows ; } public int getNumCols( ) { return num_cols ; } }