Resolution d'un systeme d'equation a duex inconnus

alibabapro Messages postés 23 Date d'inscription   Statut Membre Dernière intervention   -  
Dalfab Messages postés 706 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour! J'ai écris un programme en c++ pour résoudre un système d’équation a deux inconnus.Mais quand je compile on m'affiche une erreur que je n'arrive pas résoudre depuis une semaine.Pouvez-vous m'aider? Voici mon code:
erreur se trouve ici :System S1=System(A1,A2,A3,A4,A5,A6);

#include <iostream>
#include <conio.h>
#include "System.h"
using namespace std;

int main() {
 float A1,A2,A3,A4,A5,A6;
 cout<<"\n Saisir les coefficients du Systeme:";
 cin>>A1 >>A2 >>A3 >>A4 >>A5 >>A6;
 System S1=System(A1,A2,A3,A4,A5,A6);
 cout<<"\n Affichage du Systeme:";
 S1.afficher();
 cout<<"\n Les solutions du Systeme sont:";
 cout<<S1.Resolution().getX()<<"et"<<S1.Resolution().getY();
 getch();
 return 0;
}


Merci d'avance!!!!!!!!

3 réponses

Dalfab Messages postés 706 Date d'inscription   Statut Membre Dernière intervention   101
 
Bonjour,

Et qu'y a-t-il dans system.h ?
0
alibabapro Messages postés 23 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour Dalfab voici tous les fichier du programme

system.h:
#include "Point.h"
using namespace std;

class System{
 float A11,A12,A13,A21,A22,A23;
 public:
  void afficher();
  Point Resolution();
  System(float,float,float,float,float,float);
};

Point.h:
class Point{
 float x,y;
 public:
  Point(float =0, float=0);
  void afficher();
  double distance(Point);
  float getX();
  float getY();
};

#include <iostream>
#include "System.h"
using namespace std;

void System:: afficher(){
cout<<A11<<"* X+"<<A12<<"*Y="<<A13<<"\n";
cout<<A21<<"* X+"<<A22<<"*Y="<<A23<<"\n"; 
};

System::System(float a,float b,float c,float d,float e,float f){
 A11=a; A12=b; A13=c;
 A21=d; A22=e; A23=f;
};

Point System::Resolution(){
 float det1= A11*A22-A12*A21;
 float detX= A13*A22-A23*A12;
 float detY= A11*A23-A21*A13;
 
 float X=detX/det1;
 float Y=detX/det1;
 Point Sol=Point(X,Y);
 return Sol;
};

#include <iostream>
#include <math.h>
#include "Point.h"
using namespace std;

Point:: Point(float a, float b){
 X=a, Y=b;
};

void Point:: afficher(){
 cout<< '(' <<X <<',' <<Y<<')' <<"\n";
};

double Point:: distance(Point Autre){
 float dx=X-Autre.X;
 float dy=Y-Autre.Y;
 return sqrt(dx*dx+dy*dy);
};

float Point:: getX(){
 return X;
}
float Point:: getY(){
 return Y;
}
0
Dalfab Messages postés 706 Date d'inscription   Statut Membre Dernière intervention   101
 
Bonjour,
Les variables x et y sont en minuscules dans la définition de Point, puis sont utilisées en majuscule. Cela ne peut pas fonctionner.
J'espère que System est bien avec une majuscule car std::system existe. Il est préférable de nommer plus explicitement les objets et donc d'éviter le mot System.
Je ne vois pas de problèmes autre.
Je n'ai pas pensé à demander le texte exact de l'erreur, c'est évidement le plus important.
0
alibabapro Messages postés 23 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour! Merci pour ta reponse
L'erreur se trouve sur ce code:
Plus precisement
 cout<<S1.Resolution().getX()<<"et"<<S1.Resolution().getY();


*
**
***
****
*****
******
*******
********
*********
**********
***********
************
*************
**************
***************
****************
*****************
******************
*******************
********************
*********************
**********************
***********************
************************
*************************
**************************
***************************
****************************
*****************************
******************************
*******************************
********************************
*********************************
**********************************
***********************************
************************************
*************************************
**************************************
***************************************
****************************************
*****************************************
******************************************
*******************************************
********************************************
*********************************************
**********************************************
***********************************************
************************************************
*************************************************
**************************************************
***************************************************
****************************************************
*****************************************************
******************************************************
*******************************************************
********************************************************
*********************************************************
**********************************************************
***********************************************************
************************************************************
*************************************************************
**************************************************************
***************************************************************
****************************************************************
*****************************************************************
******************************************************************
*******************************************************************
********************************************************************
*********************************************************************
**********************************************************************
***********************************************************************
************************************************************************
*************************************************************************
**************************************************************************
***************************************************************************
****************************************************************************
*****************************************************************************
******************************************************************************
*******************************************************************************
********************************************************************************
*********************************************************************************
**********************************************************************************
***********************************************************************************
************************************************************************************

#include <iostream>
#include <conio.h>
#include "System.h"
using namespace std;

int main() {
 float A1,A2,A3,A4,A5,A6;
 cout<<"\n Saisir les coefficients du Systeme:";
 cin>>A1 >>A2 >>A3 >>A4 >>A5 >>A6;
 Systeme S1=Systeme(A1,A2,A3,A4,A5,A6);
 cout<<"\n Affichage du Systeme:";
 S1.afficher();
 cout<<"\n Les solutions du Systeme sont:";
 cout<<S1.Resolution().getX()<<"et"<<S1.Resolution().getY();
 getch();
 return 0;
}


L'erreur signal apres compilation est: Id returned 1 exit status.

Merci!!!
0
Dalfab Messages postés 706 Date d'inscription   Statut Membre Dernière intervention   101
 
Il faut le texte de l'erreur, il est avant la ligne "ld returned 1 exit status" qui indique une ou des erreurs à l'édition des liens
0
alibabapro Messages postés 23 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour voici le texte signale avant la ligne "ld returned 1 exit status":
M:\bureau\Projet_c++\P_systeme\main.o In function `main':
14 undefined reference to `Point M:\bureau\Projet_c++\P_systeme\main.cpp :getY()'
14 undefined reference to `Point M:\bureau\Projet_c++\P_systeme\main.cpp :getX()'
M:\bureau\Projet_c++\P_systeme\System.o In function `ZN7Systeme10ResolutionEv':
22 undefined reference to `Point M:\bureau\Projet_c++\P_systeme\System.cpp :Point(float, float)'

Merci d'avance!!!!
0
Dalfab Messages postés 706 Date d'inscription   Statut Membre Dernière intervention   101 > alibabapro Messages postés 23 Date d'inscription   Statut Membre Dernière intervention  
 
L'erreur est donc que les Point::Point(,) Point::getX() et Point::getY() n'existent pas, n'aurais-tu pas oublié de de mettre le fichier point.cpp dans ta compilation?
0