// matriz.h - Declaración de la clase CMatriz
#if !defined( _MATRIZ_H_ )
#define _MATRIZ_H_

//////////////////////////////////////////////////////////////////
// Matriz multidimensional basada en una unidimensional
//
class CMatriz
{
  private:
    double *matriz;   // matriz unidimensional
    int nDims;        // número de dimensiones
    int *dimsMatriz;  // valor de cada dimensión

    void construir(int n, int *dim);
  public:
    CMatriz(int d1 = 10, int d2 = 0, int d3 = 0);
    ~CMatriz();
    int totalElementos() const;
    int desplazamiento(int *subind) const;
    void asignarDato(int d, int i1, int i2 = 0, int i3 = 0);
    double obtenerDato(int i1 = 0, int i2 = 0, int i3 = 0) const;
};
//////////////////////////////////////////////////////////////////

#endif // _MATRIZ_H_

