Bonjour à tous!
Actuellement j'ai fais un devoir sur Les déterminants d'une matrice , mais j'ai eu un problème sur mon compilateur (il me dit qui y'a une erreur sur (Det) mais je ne trouve pas l'erreur) et je ne trouve pas la solution ! Mais j'ai fais le devoir , je vais vous le faire montrer!
Juste pour vous dires , que je fais mes devoirs sur Microsoft Visual c++ 6.0!
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
//void lmatrice(double mat[],double lmat[], int n, int l);
double det(double mat[], int n);
void main()
{
//exemple d'utilisation pour une matrice 2x2
int dim=2;
double *M=new double[dim*dim];
//remplissage de la matrice M
M[0+0*dim]=2.;
M[0+1*dim]=4.8;
M[1+0*dim]=6.2;
M[1+1*dim]=5.1;
//determinant de la matrice M
double resultat;
resultat=det(M,dim);
//affichage du resultat
cout<<resultat<<endl;
}
void lmatrice(double mat[],double lmat[], int n, int l)
{
int ld=0;
int k=n-1;
for(int i=0;i<n;i++)
{
if(i!=l)
{
for(int j=1;j<n;j++)
{
lmat[ld+(j-1)*k]=mat[i+j*n];
}
ld++;
}
}
double det(double mat[], int n)
{
double resultat;
resultat=0.;
int k=n-1;
double signe;
signe=1.;
double *lmat=new double[k*k];
if(n==1)
{
return mat[0];
}
for(int i=0;i<n;i++)
{
lmatrice(mat,lmat,n,i);
resultat=resultat+signe*mat[i]*det(lmat,k);
signe=-signe;
}
return resultat;
delete(lmat);
}
}
Maintenant je vais vous faire montré l'erreur quand je compile:
--------------------Configuration: Devoir03Matrice - Win32 Debug--------------------
Compiling...
Devoir03Matrice.cpp
C:\LangageC\Devoir03Matrice\Devoir03Matrice.cpp(51) : error C2601: 'det' : local function definitions are illegal
Error executing cl.exe.
Devoir03Matrice.exe - 1 error(s), 0 warning(s)
voilà je vous remercie !