'=' : cannot convert from 'const double' to 'double *'
Bonjour,
Donc voila j'ai une fonction memebre id() matrice identité
Mais j'arrive plus a la définir :
Code:
1 2 3 4 5 6 7 8 9
|
void Matrice::id()
{
int i;
int dim = nb_lignes()*nb_lignes();
for(i=0;i<dim;i++)
lignes[i] = 0;
for(i=0;i<nb_lignes();i++)
lignes[i*nb_lignes()+i] = 1.0;} |
il n'accepte pas 1.0 ni A alors que 0 oui Prq ?
sachant que ma matrice est sous la forme :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
class Matrice
{
private:
typedef double *ligne;
ligne *lignes;
unsigned int n;
unsigned int m;
//
Public :
//
unsigned int nb_colones() const;
unsigned int nb_lignes() const; |
Pourriez vous m'aidez !
test si une matrice est orthogonal
Bonjour, donc si j'ai bien compris je declare une fonction normale
et je defenie la fonction memebre orthogonale comme suit :
Code:
1 2 3 4
| bool orthogonale(const Matrice& matrice)
{
return (matrice * transpose(matrice) == identity(tailleAdequate, tailleAdequate));
} |
sachant que ma matrice transpose est de la forme :
Code:
1 2 3 4 5 6 7 8
| Matrice Matrice::transpose()
{
Matrice tmp(m,n);
for(unsigned i=0; i<n; i++)
for(unsigned j=0; j<m; j++)
tmp.lignes[j][i]=lignes[i][j];
return tmp;
} |
Merci infiniment.Maria
test si une matrice est orthogonal
test si une matrice est orthogonal
Je vois pas ce que vous voulez dire, mais transpose() est une fonction membre c'est pas une fonction libre !:(
test si une matrice est orthogonale
oui transpose() et orthogonal() sont des fonctions membres et enhaut je vous ai donné le code de orthogonale:
test si une matrice est orthogonale
Mais si vous qui ma proposé la definition de orthogonale au lieu de la mienne :
Code:
1 2 3 4
| bool orthogonale(const Matrice& matrice)
{
return (matrice * transpose(matrice) == identity(tailleAdequate, tailleAdequate));
} |
test si une matrice est orthogonal
oui, vraiment j'ai rien comprisn pourriez vous récapituler si possible?