Bonjour à quiconque voudra m'aider.
Voila j'ai un projet consernant les polynômes à n indeterminees
et j'ai un souci lors de l'execution de ce projet.
Le code compile mais lorsque j'execute le .exe il n'affiche pas la dernière ligne de commande qui est :
ou p represente un polynome.
Pour construire un polynome j'ai eu recours à un première classe qui gere les monomes à n indeterminees.
//monome.cpp
Code :
- #include <iostream>
- #include <math>
- using namespace std;
- const int MAX_IND=100;
- class monome{
- float a;
- int n;
- int buffer[MAX_IND];
- public:
- monome(){a=0;n=0;buffer[MAX_IND]=0;};
- float coef(){return a;};
- int nbv(){return n;};
- ...
- ostream& operator<<(ostream& o, monome m ){
- o<<m.coef()<<'.';
- for(int k=0;k<m.nbv()-1;k++){
- o<<'X'<<k+1<<'^'<<m.buffer[k]<<'.';
- };
- o<<'X'<<m.nbv()<<'^'<<m.buffer[m.nbv()-1];
- return o;
- };
- istream& operator>>(istream& i, monome& m){
- cout<<"quel est le coefficient du monome : ";
- i>>m.a;
- cout<<"quel est le nombre d'indeterminees : ";
- i>>m.n;
- if(m.n<0 || m.n>MAX_IND){
- cout<<"veuillez entrer une valeur comprise entre 0 et "<<MAX_IND<<" : "<<"\n";
- i>>m.n;
- };
- for(int k=0;k<m.n;k++){
- cout<<"quel est le degre de votre "<<k+1<<"eme indeterminee : ";
- i>>m.buffer[k];
- if(m.buffer[k]<0){
- cout<<"entrez une valeur positive pour le degre : ";
- i>>m.buffer[k];};
- };
- return i;
- };
|
maintenant pour la classe polynome j'ai fait ça
//polynome.cpp
Code :
- #include<iostream>
- using namespace std;
- const int MAX=128;
- class polynome{
- monome buffer[MAX];
- int l;
- public:
- polynome(){l=0;};
- int longueur(){return l;};//le nombre de monome
- ...
- ostream& operator<<(ostream& o, polynome p){
- o<<'(';
- for(int k=0;k<p.longueur();k++)
- o<<p.buffer[k]<<" ";
- o<<')';
- return o;
- };
- istream& operator>>(istream& i, polynome& p){
- cout<<"de combien de monome(s) est constitué votre polynome ? ";
- i>>p.l;
- if(p.l<0 || p.l>MAX){
- cout<<"veuillez entrer une valeur comprise entre 0 et "<<MAX<<" : "<<"\n";
- i>>p.l;};
- for(int k=0;k<p.l;k++){
- cout<<"entrez votre "<<k+1<<"eme monome "<<"\n";
- i>>p.buffer[k];};
- return i;
- };
|
La saisie du polynome fonctionne mais l'affichage qui ne s'execute pas.
Voila mon jeu de test. J'ai suivi les conseils de suizokukan
//test.cpp
Code :
- #include"monome.cpp"
- #include"polynome.cpp"
- void main(void){
- polynome p;
- cin>>p;
- cout<<"la longueur du polynome est : "<<p.longueur()<<"\n";
- cout<<"le degre gloabal est : "<<p.deg_glo()<<"\n";
- cout<<p;
- };
|
Voila si vous pouviez m'expliquer, s'il vous plait, pourquoi il n'execute pas cette derniere ligne
---------------
Le sourire est une invention britannique. Pour être précis, les Anglais l'ont rapporté de leur campagne japonaise