All pastes #128364 Raw Edit

Untitled

public text v1 · immutable
#128364 ·published 2006-08-12 22:48 UTC
rendered paste body
typedef struct _double_matrix {
    double *data ;
    int xsize ;
    int ysize ;
} DMATRIX ;

DMATRIX *dmatrix_new( int xsize, int ysize )
{
    DMATRIX *m ;
    int x, y ;

    m->data = calloc( xsize * ysize, sizeof(double) );
    if( !m ) return( NULL );

    m->xsize = xsize ;
    m->ysize = ysize ;

    /* Inutile avec calloc() mais juste pour l'exemple : */

    for( x=0 ; x<xsize ; x++ ) {
        for( y=0 ; y<size ; y++ ) {
            dmatrix_set_value( m, x, y, (double)0 );
        }
    }
    return(m);
}

void dmatrix_set_value( DMATRIX *m, int x, int y, double value )
{
    if( x<m->xsize && y<m->ysize ) {
         m->data[ x*(m->xsize-1) + y ] = value ;
    }
}

double dmatrix_get_value( DMATRIX *m, int x, int y )
{
    if( x<m->xsize && y<m->ysize ) {
        return(
            m->data[ x*(m->xsize-1) + y ]
        );
    }
    return( (double) 0 )
}