Exercice Langage C++ 3 corrigé l’héritage multiple

#include <iostream.h>
#include <string.h>
class moniteur{
char type[5];
long int couleur;
int x_reso;
int y_reso;
public:
moniteur(char tp[5]="", long int coul=0, int x=0, int y=0);
void montrer();
};

class carte_mere{
int processeur;
int vitesse;
int ram;
public:
carte_mere(int pro=0, int vi=0, int rm=0);
void montrer();
};
class ordinateur:public moniteur, carte_mere{
char nom[10];
int hardisk;
float lecteur;
public:
ordinateur(char nm[10], int hd, float lct,char tp[5],long int coul, int x, int y,int
pro, int vi, int rm);
//attention ne pas oublier
void montrer();
};
class poste_travail:public ordinateur{
char syst_exploi[10];
public:
poste_travail(char s_e[10],char nm[10], int hd, float lct,char tp[5],long int coul, int x,
int y,int pro, int vi, int rm);
void montrer();
};
poste_travail::poste_travail(char s_e[10],char nm[10], int hd, float lct,char tp[5],long
int coul, int x, int y,int pro, int vi, int rm):ordinateur(nm,hd,lct,tp,coul,x,y,pro,vi,rm){
strcpy(syst_exploi,s_e);
}
void poste_travail::montrer(){
ordinateur::montrer();
cout<<"Systeme d'exploitation : "<<syst_exploi<<endl;
}
moniteur::moniteur(char tp[5], int long coul, int x, int y){
strcpy(type,tp);
couleur=coul;
x_reso=x;
y_reso=y;
}
void moniteur::montrer(){
cout<<"type de moniteur: "<<type<<endl;
cout<<"couleur: "<<couleur<<endl;
cout<<"x_reso: "<<x_reso<<endl;
cout<<"y_reso: "<<y_reso<<endl;
}
carte_mere::carte_mere(int pro, int vi, int rm){
processeur=pro;
vitesse=vi;
ram=rm;
}
void carte_mere::montrer(){
cout<<"processeur: "<<processeur<<endl;
cout<<"vitesse: "<<vitesse<<endl;
cout<<"ram: "<<ram<<endl;
}
ordinateur::ordinateur(char nm[10], int hd, float lct,char tp[5],long int coul, int x, int
y,int pro, int vi, int rm): moniteur(tp,coul,x,y),carte_mere(pro,vi,rm){
//je mets public a chak fois... erreur de syntaxe
strcpy(nom,nm);
hardisk=hd;
lecteur=lct;
}
void ordinateur::montrer(){
moniteur::montrer();
carte_mere::montrer();
cout<<"nom du PC: "<<nom<<endl;
cout<<"hd: "<<hardisk<<endl;
cout<<"lecteur: "<<lecteur<<endl;
}
void main()
{
moniteur a("moniteur",256,800,600);
a.montrer();
cout<<endl;
carte_mere b(64,3,1024);
b.montrer();
cout<<endl;
ordinateur c("junior",160,5.4,"moniteur",256,800,600,64,3,1024);
c.montrer();
cout<<endl;
poste_travail d("XP","junior",160,5.4,"moniteur",256,800,600,64,3,1024);
d.montrer();
}

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *