Académique Documents
Professionnel Documents
Culture Documents
#include<vector>
#include<iomanip>
#include <windows.h>
#include <conio.h>
using namespace std;
class Personne {
protected:
int id;
string nom;
string prenom;
string mail;
public:
Personne(){}
Personne(int id,string nom,string prenom,string mail);
friend ostream& operator<<(ostream& ,const Personne&);
//getters
int getid(){return id;}
string getNomPersonne(){ return nom;}
string getPrenomPersonne(){return prenom;}
string getMailPersonne(){return mail;}
//setters
void setNomP(string nomp){nom=nomp;}
void setPrenomP(string prenomp){prenom=prenomp;}
void setMailP(string mailp){mail=mailp;}
};
// Constructeur de l'objet Personne :
Personne::Personne(int id,string nom,string prenom,string mail)
{
this->id=id;
this->nom=nom;
this->prenom=prenom;
this->mail=mail;
}
// surcharge de l op << pour Personne
//--------------------------------------------------------------------------
};
// Constructeur de l'objet Etudiant :
//---------------------------------------------------------------------------------
----------
//Classe Enseignant :
};
// Constructeur de l'objet Enseignant :
//---------------------------------------------------------------------------------
--------
// Classe Matiere :
class Matiere{
protected:
string idMat;
string nomMat;
float coef;
Enseignant ens;
public:
Matiere(){}
Matiere(string idMat,string nomMat,float coef,Enseignant ens);
friend ostream& operator<<(ostream& cout ,const Matiere& m);
//Getters
string getidmat(){return idMat;}
float getcoef(){return coef;}
Enseignant getEns(){return ens;}
string getNomMatiere(){return nomMat;}
string getNomEns(){ return ens.getNomPersonne();}
//setters
void setNomM(string nom){nomMat=nom;}
void setCoefM(float coefm ){coef=coefm;}
void setEns(Enseignant e){ens=e;}
void setMatiereMailProf(string mail){ens.setMailP(mail);}
void setMatiereNomProf(string nom){ens.setNomP(nom);}
void setMatierePrenomProf(string prenom){ens.setPrenomP(prenom);}
void setMatiereProf(Enseignant e){ens=e;}
};
// Constructeur de l'objet Matiere :
Matiere::Matiere(string idMat,string nomMat,float coef,Enseignant ens)
{
this->idMat=idMat;
this->nomMat=nomMat;
this->coef=coef;
this->ens=ens;
}
//---------------------------------------------------------------------------------
----------------
// Classe Note :
class note {
private:
Matiere Mat;
Etudiant Etu;
int Note;
string Type;
public:
note(){}
note(Matiere MatAJ,Etudiant EtuAJ,int Note, string Type);
friend ostream& operator<<(ostream& cout ,const note& n);
//Getters
int getnote(){return Note;}
Matiere getmatiere(){return Mat;}
Etudiant getetudiant(){return Etu;}
string getType(){return Type;}
};
//Constructeur de l'objet note:
note::note(Matiere MatAJ,Etudiant EtuAJ,int Note, string Type)
{
Mat=MatAJ;
Etu=EtuAJ;
this->Note=Note;
this->Type=Type;
//---------------------------------------------------------------------------------
---------------
// fonction Moymat
for(int i=0;i<tnote.size();i++)
{
if((tnote[i].getmatiere().getidmat()==idmat)&&
(tnote[i].getetudiant().getid()==idEtu))
{
somme=somme+tnote[i].getnote() ;
nb=nb+1;
}
}
return somme/nb;
}
//---------------------------------------------------------------------------------
--------------------
//Classe GroupeModule :
class GroupeModule {
private:
string idGM;
string nomGM;
float coefGM;
vector <Matiere> ListMat ;
public:
GroupeModule(){}
GroupeModule(string idGM,string nomGM,float coefGM, vector <Matiere> ListMat);
friend ostream& operator<<(ostream& cout ,const GroupeModule& gm);
// fonction MoyGM :
float MoyGM(vector <note> tnote,int idEtu)
{ float somme=0;
int nb=0;
for(int i=0;i<ListMat.size();i++)
{ somme=(Moymat(tnote,ListMat[i].getidmat(),idEtu) *
ListMat[i].getcoef())+somme;
nb=nb+ListMat[i].getcoef();
}
return somme/nb;
}
//Getters
string getIdGm() {return idGM;}
string getNomGm() {return nomGM;}
float getcoef() {return coefGM;}
vector <Matiere> getListeMat(){return ListMat ;}
Matiere getElemntMat(int i) {return ListMat[i];}
//Setters
void setNomGm(string nom){nomGM=nom;}
void setCoefGm(float coef){coefGM=coef;}
//set matiere
void setGmNomMatiere(int k,string nomMatiere){ListMat[k].setNomM(nomMatiere);}
void setGmCoefMatiere(int k,float coefMatiere)
{ListMat[k].setCoefM(coefMatiere);}
void SetGmAjoutMat(Matiere y){ListMat.push_back(y);}
void SetGmSuppMat(int k) {vector <Matiere>::iterator
it;it=ListMat.begin();ListMat.erase(it+k);}
void SetGmMatiereMailProf(int j, string mail)
{ListMat[j].setMatiereMailProf(mail);}
void SetGmMatiereNomProf(int j, string nom)
{ListMat[j].setMatiereNomProf(nom);}
void SetGmMatierePrenomProf(int j, string prenom)
{ListMat[j].setMatierePrenomProf(prenom);}
void SetGmMatiereProf(int k,Enseignant e){ListMat[k].setMatiereProf(e);}
};
// Constructeur de l'objet GroupeModule :
GroupeModule::GroupeModule(string idGM,string nomGM,float coefGM,vector <Matiere>
ListMat)
{
this->idGM=idGM;
this->nomGM=nomGM;
this->coefGM=coefGM;
this->ListMat=ListMat;
}
//Classe Groupe :
class Groupe {
private:
string IdGRP ;
string Niveau;
string Diplome;
string Specialite;
int NumG;
vector <GroupeModule> ListeModules;
vector <Etudiant> ListeEtudiants;
public:
Groupe(){}
Groupe(string IdGRP,string Niveau,string Diplome,string Specialite,int
NumG,vector <GroupeModule> ListeModules,vector <Etudiant> ListeEtudiants);
friend ostream& operator<<(ostream& cout ,const Groupe& g);
};
// recherche etudiant
int Groupe::trouve(int idEtu)
{
int trouv=-1;
int i=0;
while((trouv==-1)&&(i<ListeEtudiants.size()))
{
if(idEtu==ListeEtudiants[i].getid())
{
trouv=i;
return trouv;
}
i++;
}
return trouv;
}
//
// moyenne etudiant
float Groupe::Moyenne(int idEtu ,vector <note> tnote)
{ float nb=0;
float somme=0;
if(trouve(idEtu)!=-1)
{
for(int i=0;i<ListeModules.size();i++)
{
somme=somme+
(ListeModules[i].MoyGM(tnote,idEtu)*ListeModules[i].getcoef());
nb=nb+ListeModules[i].getcoef();
}
return somme/nb;
}
else
{
return -1;
}
}
//Resultat
string Resultat(float x)
{ string m;
if (x==-1)
{ m="inexistant";
}
else if(0<x && x<10)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
m="Ajourne";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else if(x>10)
{ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
m="Admis";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
return m;
}
string Mention(float x)
{
string m;
if (x == -1)
{
m = "inexistant";
}
else if (0 < x && x < 10)
{
m = "";
}
else if (10 <= x && x < 12)
{
m = "Passable";
}
else if (12 <= x && x < 14)
{
m = "Assez bien";
}
else if (14 <= x && x < 16)
{
m = "Bien";
}
else if (16 <= x && x <= 20)
{
m = "Tres Bien";
}
else if (18 <= x && x <= 20)
{
m = "Excellent";
}
return m;
}
cout<<g.IdGRP<<","<<g.Niveau<<","<<g.Diplome<<","<<g.Specialite<<","<<g.NumG<<endl;
for(int i=0;i<g.ListeModules.size();i++) {cout<<g.ListeModules[i]<<endl;}
for(int i=0;i<g.ListeEtudiants.size();i++) {cout<<g.ListeEtudiants[i]<<endl;}
return cout;
}
// Saisie
Etudiant saisiEtudiant()
{ int id;
string nom;
string prenom;
string mail;
int numinsc;
cout<<"Donner id etudiant"<<endl;
cin>>id;
Etudiant e(id,nom,prenom,mail,numinsc);
FILE *t;
t=fopen("archiveEtu.txt","a");
fprintf(t,"%d %s %s %s %d\n",id,nom,prenom,mail,numinsc);
fclose(t);
return e;
Enseignant saisieEns()
{
int id;
string nom;
string prenom;
string mail;
int cnss;
FILE *t;
t=fopen("archiveENS.txt","a");
fprintf(t,"%d %s %s %s %d\n",id,nom,prenom,mail,cnss);
fclose(t);
Enseignant e(id,nom,prenom,mail,cnss);
return e;
Matiere saisiMatiere()
{
string idMat;
string nomMat;
float coef;
Enseignant ens;
cout<<"donner ID Matiere"<<endl;
cin>>idMat;
ens=saisieEns();
Matiere m(idMat,nomMat,coef,ens);
return m;
}
note saisiNote()
{
Matiere m;
Etudiant e;
float n;
string type;
m=saisiMatiere();
e=saisiEtudiant();
do {
cout<<"donner la note sur 20 "<<endl;
cin>>n;
}while ((n>20) || (n<0));
do {
cout<<"donner le type de la note "<<endl;
cin>>type;
}while ((type!="ds") && (type!="tp")&&(type!="examen"));
note notee(m,e,n,type);
return notee;
GroupeModule saisiGM()
{
string idGM;
string nomGM;
float coefGM;
vector <Matiere> ListMat ;
int nbmat;
int i;
for(i=0;i<nbmat;i++)
{
ListMat.push_back(saisiMatiere());
}
GroupeModule gm(idGM,nomGM,coefGM,ListMat);
return gm;
}
// Ajouter Groupe
if(trouve(tgroupe,idg)!=-1)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"groupe existe
deja !"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else
{ do {
cout<<"donner le Niveau du groupe"<<endl;
cin>>niveau;
} while((niveau!="1ere")&&(niveau!="2eme")&&(niveau!="3eme")&&(niveau!
="4eme")&&(niveau!="5eme"));
do {
cout<<"donner le Diplome du groupe"<<endl;
cin>>diplome;
} while((diplome!="Ing")&&(diplome!="Master")&&(diplome!
="Prepa")&&(diplome!="Licence")&&(diplome!="Doc"));
do {
cout<<"donner la Specialite du groupe"<<endl;
cin>>spec;
} while((spec!="Ing")&&(spec!="Master")&&(spec!="Prepa")&&(spec!
="Licence")&&(spec!="Doc"));
do {
cout<<"donner le Numero du groupe"<<endl;
cin>>numg;
} while((numg!=1)&&(numg!=2)&&(numg!=3));
FILE *t;
t=fopen("archiveGrp.txt","a");
fprintf(t,"%s %s %s %s %d \n",idg,niveau,diplome,spec,numg);
fclose(t);
do {
cout<<"donner le nbr d'etudiant dans ce groupe"<<endl;
cin>>nbetu;
}while(nbetu<0);
int i;
for(i=0;i<nbetu;i++)
{ Etudiant e=saisiEtudiant();
if(i==0)
{ListeEtudiants.push_back(e);}
else
{
if(trouveEtu(ListeEtudiants,e.getid())==-1)
{
ListeEtudiants.push_back(e);
}
else
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"ce groupe module existe deja"<<endl;}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
do {
cout<<"donner le nbr de groupe Module dans ce groupe"<<endl;
cin>>nbmodule;
}while(nbmodule<0);
int j;
for(j=0;j<nbmodule;j++)
{
GroupeModule x=saisiGM() ;
if (j==0)
{
ListeModules.push_back(x);
}
else
{
if(trouveGM(ListeModules,x.getIdGm())==-1)
{
ListeModules.push_back(x);
}
else
{ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"ce groupe module existe deja"<<endl;}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
}
Groupe g( idg,niveau,diplome,spec,numg,ListeModules,ListeEtudiants);
tgroupe.push_back(g);
}
}
void MAJgroupeDilome(vector <Groupe> &tgroupe)
{
string idg;
cout<<"donner l id du groupe a mettre a jour"<<endl;
cin>>idg;
int x=trouve(tgroupe,idg);
if(x!=-1)
{
string diplome ;
do {
cout<<"Donner le diplome du Groupe"<<endl;
cin>>diplome;
}while((diplome!="Ing")&&(diplome!="Master")&&(diplome!="Prepa")&&(diplome!
="Licence")&&(diplome!="Doc"));
tgroupe[x].SetDiplome(diplome);
}
else
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"ce groupe n existe pas"<<endl;
}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
void MAJgroupeSpecialite(vector <Groupe> &tgroupe)
{
string idg;
cout<<"donner l id du groupe a mettre a jour"<<endl;
cin>>idg;
int x=trouve(tgroupe,idg);
if(x!=-1)
{
string spec;
do {
cout<<"donner la Specialite du groupe"<<endl;
cin>>spec;
} while((spec!="Inf")&&(spec!="Indus")&&(spec!="Meca"));
tgroupe[x].SetSpecialite(spec);
}
else
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"ce groupe n existe pas"<<endl;
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
void MAJgroupeNumG(vector <Groupe> &tgroupe)
{
string idg;
cout<<"donner l id du groupe a mettre a jour"<<endl;
cin>>idg;
int x=trouve(tgroupe,idg);
if(x!=-1)
{
int numg ;
do {
cout<<"Donner le Numero du Groupe"<<endl;
cin>>numg;
}while((numg!=1)&&(numg!=2)&&(numg!=3));
tgroupe[x].SetNumG(numg);
}
else
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"ce groupe n existe pas"<<endl;
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
if((tgroupe[i].getElementGM(j).getIdGm()==gm.getIdGm())&&(tgroupe[i].getElementGM(j
).getcoef()!=gm.getcoef())&&(tgroupe[i].getElementGM(j).getNomGm()!=gm.getNomGm()))
{
trouv=0;
return trouv;
}
}
}
}
return trouv;
}
if(tgroupe[i].getElementGM(j).getElemntMat(k).getidmat()==idm)
{
trouv=0;
return trouv;
}
k++;
}
j++;
}
i++;
}
return trouv;
}
// MAJ Matiere
tgroupe[i].SetMajGroupeNomMatiere(j,k,nomMatiere);
somme=somme+1;
}
}
}
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<somme<<" mise a jour ont ete faites"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
if (VerifMatiereAll( tgroupe,idm)==-1)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"cette matiere n existe
pas"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else
{
float coefMatiere;
cout<<"donner le nouveau nom de matiere"<<endl;
cin>> coefMatiere;
int somme=0;
for(int i=0;i<tgroupe.size();i++)
{
for(int j=0;j<tgroupe[i].getListeGM().size();j++)
{
for(int k=0;k<tgroupe[i].getElementGM(j).getListeMat().size();k++)
{
if(idm==tgroupe[i].getElementGM(j).getElemntMat(k).getidmat())
{
tgroupe[i].SetMajGroupeCoefMatiere(j,k,coefMatiere);
somme=somme+1;
}
}
}
}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<somme<<" mise a jour ont ete faites"<<endl; }
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
if (VerifMatiereAll( tgroupe,idm)==-1)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"cette matiere n existe pas"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else
{
Enseignant e=saisieEns();
int somme=0;
for(int i=0;i<tgroupe.size();i++)
{
for(int j=0;j<tgroupe[i].getListeGM().size();j++)
{
for(int k=0;k<tgroupe[i].getElementGM(j).getListeMat().size();k++)
{
if(idm==tgroupe[i].getElementGM(j).getElemntMat(k).getidmat())
{
tgroupe[i].SetGroupeGmMatiereProf(j,k,e);
somme=somme+1;
}
}
}
}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<somme<<" mise a jour ont ete faite"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
}
for(int i=0;i<tgroupe.size();i++)
{
for(int j=0;j<tgroupe[i].getListeGM().size();j++)
{
for(int k=0;k<tgroupe[i].getElementGM(j).getListeMat().size();k++)
{
if(idp==tgroupe[i].getElementGM(j).getElemntMat(k).getEns().getid())
{
tgroupe[i].SetGroupeGmMatiereNomProf(j,k,nomp);
somme=somme+1;
}
}
}
}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<somme<<" mise a jour ont ete faite"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
for(int i=0;i<tgroupe.size();i++)
{
for(int j=0;j<tgroupe[i].getListeGM().size();j++)
{
for(int k=0;k<tgroupe[i].getElementGM(j).getListeMat().size();k++)
{
if(idp==tgroupe[i].getElementGM(j).getElemntMat(k).getEns().getid())
{
tgroupe[i].SetGroupeGmMatierePrenomProf(j,k,nomp);
somme=somme+1;
}
}
}
}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<somme<<" mise a jour ont ete faite"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
if(idp==tgroupe[i].getElementGM(j).getElemntMat(k).getEns().getid())
{
tgroupe[i].SetGroupeGmMatiereMailProf(j,k,nomp);
somme=somme+1;
}
}
}
}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<somme<<" mise a jour ont ete faite"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
}
}
if(trouv==0){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<"la mise a jour a ete
faite"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
else{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
0x04);cout<<"aucune mise a jour n a ete
faite"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
}
}
}
}
if(trouv==0){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<"la mise a jour a ete
faite"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
else{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"aucune mise a jour n a ete
faite"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
}
tgroupe[i].setMAJmailEtu(j,mail);
}
}
}
if(trouv==0){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
0x02);cout<<"la mise a jour a ete
faite"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
else{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
0x04);cout<<"aucune mise a jour n a ete
faite"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
}
tgroupe[x].setMAJnomGM(i,nom);SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDL
E), 0x02);
cout<<"mise a jour nom
terminee"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
}
tgroupe[x].setMAJcoefGM(i,coef);SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HAN
DLE), 0x02);
cout<<"mise a jour nom
terminee"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
}
string idgm;
cout<<"Donner l id du groupe module a mettre a jour "<<endl;
cin>>idgm;
if(ExisteGM(tgroupe,idgm)==-1)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<" ce groupe module n existe
pas"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else
{
Matiere y=saisiMatiere();
for(int i=0;i<tgroupe.size();i++)
{
for(int j=0;j<tgroupe[i].getListeGM().size();j++)
{
if(idgm==tgroupe[i].getElementGM(j).getIdGm())
{
if(VerifGmMatiere(tgroupe[i].getElementGM(j).getListeMat(),
y.getidmat())==-1)
{
tgroupe[i].SetGroupGmAjoutMat(j,y);
}
}
}
}
}
}
string idgm;
cout<<"Donner l id du groupe module dans leguel vous souhaitez ajouter la
matiere "<<endl;
cin>>idgm;
if(ExisteGM(tgroupe,idgm)==-1)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<" ce groupe module n existe
pas"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else
{
Matiere y=saisiMatiere();
for(int i=0;i<tgroupe.size();i++)
{
for(int j=0;j<tgroupe[i].getListeGM().size();j++)
{
if(idgm==tgroupe[i].getElementGM(j).getIdGm())
{
if(VerifGmMatiere(tgroupe[i].getElementGM(j).getListeMat(),
y.getidmat())==-1)
{
tgroupe[i].SetGroupGmAjoutMat(j,y);
}
}
}
}
}
}
void MajGmSuppMat(vector <Groupe> &tgroupe)
{
string idgm;
cout<<"Donner l id du groupe module a mettre a jour "<<endl;
cin>>idgm;
if(ExisteGM(tgroupe,idgm)==-1)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<" ce groupe module n existe
pas"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else
{ cout<<"donner l id de matiere a supprimer"<<endl;
string idm; cin>>idm;
int somme=0;
for(int i=0;i<tgroupe.size();i++)
{
for (int j=0;j<tgroupe[i].getListeGM().size();j++)
{
if(tgroupe[i].getElementGM(j).getIdGm()==idgm)
{
for(int k=0;k<tgroupe[i].getElementGM(j).getListeMat().size();k+
+)
{
if(tgroupe[i].getElementGM(j).getElemntMat(k).getidmat()==idm)
{
tgroupe[i].SetGroupeGmSuppMat(j,k);
somme=somme+1;
}
}
}
}
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<somme<<" suppression ont ete
effectuees";SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
GroupeModule y=saisiGM();
if((trouveGM(tgroupe[x].getListeGM(),y.getIdGm())==-
1)&&(VerifGMdansTouTlesGroupes(tgroupe,tgroupe[x].getidgroupe() ,y)==-1))
{
tgroupe[x].SetlistAjoutgm(y);
}
else
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"ce groupe module existe
deja"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
}
GroupeModule y=saisiGM();
if((trouveGM(tgroupe[x].getListeGM(),y.getIdGm())==-
1)&&(VerifGMdansTouTlesGroupes(tgroupe,tgroupe[x].getidgroupe() ,y)==-1))
{
tgroupe[x].SetlistAjoutgm(y);
}
else
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"ce groupe module existe
deja"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
}
string idgm;
cout<<"donner id du gm que vous souhaitez supprimer"<<endl;
cin>>idgm;
int y=trouveGM(tgroupe[x].getListeGM(),idgm);
if(y==-1)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"ce groupe module n'existe pas"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else
{
tgroupe[x].SetlistSuppgm(y);
}
}
}
if(verif==0) {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
0x04);cout<<"cet Etudiant existe
deja"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
else
{ string idg;
cout<<"Dans quel Groupe vous voulez ajouter cet Etudiant"<<endl;
cin>>idg;
int y=trouve(tgroupe,idg);
if (y==-1) {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
0x04);cout<<"Ce Groupe n'existe
pas"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
else {
tgroupe[y].AjoutEtu(e);
}
}
if(verif==-1) {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
0x04);cout<<"cet Etudiant n'existe pas
"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
else
{
tgroupe[x].SuppEtu(idetu);
}
tgroupe[i].SetlistSuppgm(j);
supp=supp+1;
}
}
}
cout<<supp<<" suppression ont ete effectuee"<<endl;
}
int VerifGMatiere(vector <GroupeModule> tgm,string idm)
{
int trouv=-1;
int i=0;
while((trouv==-1)&&(i<tgm.size()))
{ int j=0;
while((trouv==-1)&&(j<tgm[i].getListeMat().size()))
{
if(tgm[i].getElemntMat(j).getidmat()==idm)
{
trouv=0;
return trouv;
}
j++;
}
i++;
}
return trouv;
}
int x=trouve(tgroupe,idg);
if (x==-1){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
0x04);cout<<"Ce Groupe n'existe pas
";SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
else
{ Matiere y=saisiMatiere();
int z=trouveGM(tgroupe[x].getListeGM(),idgm);
if(z!=-1)
{
if(VerifGMatiere(tgroupe[x].getListeGM(), y.getidmat())==-1)
{
tgroupe[x].SetGroupeGmAjoutMatiere(z,y);
}
else
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"cette matiere existe
deja"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
else
{ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"ce groupe module n'existe
pas"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
}
}
tgroupe[i].setGroupeGmSuppMat(j,k);
somme=1;
}
}
}
}
if (somme==0)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"aucune suppression n a ete
effectuee"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<somme<<" suppression ont ete
effectuees"<<endl;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
tgroupe[x].setGroupeGmSuppMat(i,j);
somme=1;
}
}
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<somme<<" supression a ete effectuee"<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
if (x == -1)
{ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout << "Ce groupe n'existe pas." << endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
else
{
// Affichage des informations générales du groupe
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
cout << setw(20) << left << "Nom du groupe : ";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F); cout<<
tgroupe[x].getidgroupe() << endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0);
cout << setw(20) << left << "Nombre d'etudiants : " <<
tgroupe[x].getListeEtudiants().size() << endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
cout << endl;
for(int y=0;y<tgroupe[x].getElementGM(z).getListeMat().size();y++)
{ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x06);
cout << tgroupe[x].getElementGM(z).getElemntMat(y).getNomMatiere()
<< " "; SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
cout << endl;
cout <<
"---------------------------------------------------------------------" << endl;
cout << " Coeff : ";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
for(int y=0;y<tgroupe[x].getElementGM(z).getListeMat().size();y++)
{
cout << tgroupe[x].getElementGM(z).getElemntMat(y).getcoef() << "
";
}
cout << endl;
}
cout << endl;
for(int i=0;i<tgroupe[x].getListeEtudiants().size();i++)
{
cout << setw(10) << left << tgroupe[x].getElementETU(i).getNumInscc()
<< setw(20) << left
<< tgroupe[x].getElementETU(i).getNomPersonne() << setw(20) <<
left
<< tgroupe[x].getElementETU(i).getPrenomPersonne();
for(int j=0;j<tgroupe[x].getListeGM().size();j++)
{
for(int k=0;k<tgroupe[x].getElementGM(j).getListeMat().size();k++)
{
float a = Moymat(tnote,
tgroupe[x].getElementGM(j).getElemntMat(k).getidmat(),
tgroupe[x].getElementETU(i).getid());
cout << setw(10) << left << a;
}
cout << setw(10) << left << tgroupe[x].getElementGM(j).MoyGM(tnote,
tgroupe[x].getElementETU(i).getid());
}
cout<<setw(12) <<
left<<tgroupe[x].Moyenne(tgroupe[x].getElementETU(i).getid(), tnote);
float y=tgroupe[x].Moyenne(tgroupe[x].getElementETU(i).getid(),
tnote);
cout<< setw(12)<<left<<Resultat(y);
cout<< setw(12) << left <<Mention(y);
}
}
}
}
void affichageToutLesMat(vector <Groupe> tgroupe)
{
cout<<"donner l id du Groupe"<<endl;
string idg; cin>>idg;
int x=trouve(tgroupe,idg);
if(x==-1){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<"Ce Groupe n existe
pas";SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);}
else
{ cout<<"La Liste des Matieres :"<<endl;
for(int j=0;tgroupe[x].getListeGM().size();j++)
{
for(int k=0;tgroupe[x].getElementGM(j).getListeMat().size();k++)
{
cout<<tgroupe[x].getElementGM(j).getElemntMat(k).getNomMatiere()<<"
,";
}
}
}
}
//---------------------------------------------------------------------------------
----------------------
//---------------------------------------------------------------------------------
----------------------
//---------------------------------------------------------------------------------
----------------------
//---------------------------------------------------------------------------------
----------------------
//---------------------------------------------------------------------------------
----------------------
//---------------------------------------------------------------------------------
----------------------
int mainmenu()
{ int c ;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
printf(" * 1- Affichage PV
*\n");
printf(" * 2- Moyenne Etudiant
*\n");
printf(" * 3- Faire des Modifications
*\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
do {
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
c=0;
}while ( (c!=1)&&(c!=2)&&(c!=0)&&(c!=3));
printf("\n");
scanf("%d",&c);
return c;
int menuGestion()
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
int c;
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
do {
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&& (c!=3)&&(c!=4)&&(c!=5)&&(c!=6)&&(c!=7)&&(c!=0));
return c ;
}
int menuGestionGroupe()
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
int c;
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
int menuMAJgroupe()
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
int c;
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
printf(" * 1 - Modifier Niveau du
Groupe *\n");
printf(" * 2 - Modifier Diplome du
Groupe *\n");
printf(" * 3 - Modifier Specialite du
Groupe *\n");
printf(" * 4 - Modifier Numero du
Groupe *\n");
printf(" * 5 - Ajouter Groupe Module
*\n");
printf(" * 6 - Supprimer Groupe Module
*\n");
printf(" * 7 - Ajouter Etudiant
*\n");
printf(" * 8 - Supprimer Etudiant
*\n");
printf(" * 9 - Ajouter Matiere
*\n");
printf(" * 10- Supprimer Matiere
*\n");
printf(" * 11- Retour Menu Principal
*\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
do {
printf(" * >> Tapez votre Choix:
*\n");
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&& (c!=3)&&(c!=4)&&(c!=5)&&(c!=6)&&(c!=7)&&(c!=8)&&(c!
=9)&&(c!=10)&&(c!=11)&&(c!
=0));SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
return c ;
}
int menuGestionGM()
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
int c;
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
do {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&& (c!=3)&& (c!=4)&&(c!=0));
return c ;
}
int menuMAJGm()
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
int c;
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
printf(" * 1 - Modifier Nom du Groupe
Module *\n");
printf(" * 2 - Modifier Coef du Groupe
Module *\n");
printf(" * 3 - Ajouter Matiere
*\n");
printf(" * 4 - Supprimer Matiere
*\n");
printf(" * 5 - Retour Menu Principal
*\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
do {
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&& (c!=3)&&(c!=4)&&(c!=5)&&(c!=0));
return c ;
int menuGestionEtudiant()
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
int c;
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
int menuAFF()
{int c;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
printf(" * 1 - Afficher toutes les infos des
Grp *\n");
printf(" * 2 - Afficher tous les GM des
Grp *\n");
printf(" * 3 - Afficher tous les Etu des
Grp *\n");
printf(" * 4 - Afficher toutes les MAT des
Grp *\n");
printf(" * 5 - Retour Menu Principal
*\n");
do {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&& (c!=3)&&(c!=4)&&(c!=5)&&(c!=0));
return c ;
int menuMAJEtu()
{int c;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
printf(" * 1 - Modifier Nom de
l'Etudiant *\n");
printf(" * 2 - Modifier Mail de
l'Etudiant *\n");
printf(" * 3 - Modifier Prenom de
l'Etudiant *\n");
printf(" * 4 - Retour Menu Principal
*\n");
do {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&& (c!=3)&&(c!=4)&&(c!=0));
return c ;
}
int menuGestionMatiere()
{
int c;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
do {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&& (c!=3)&& (c!=4)&&(c!=0));
return c ;
}
int menuMAJMat()
{
int c;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
printf(" * 1 - Modifier Nom de
Matiere *\n");
printf(" * 2 - Modifie Coef de
Matiere *\n");
printf(" * 3 - Modifier Enseignant de
Matiere *\n");
printf(" * 4 - Retour Menu Principal
*\n");
do {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&& (c!=3)&&(c!=4)&&(c!=0));
return c ;
}
int menuGestionNote()
{
int c;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
do {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&& (c!=3)&&((c!=0)));
return c ;
int menuGestionProf()
{
int c;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
do {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * >> Tapez votre Choix:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
scanf("%d",&c);
}while ( (c!=1)&&(c!=2)&&(c!=0));
return c ;
int menuMAJEnseignant()
{
int c;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * Veuillez choisir une option:
*\n");SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
printf(" * 1 - Modifier Nom de
l'Enseignant *\n");
printf(" * 2 - Modifier Mail de
l'Enseignant *\n");
printf(" * 3 - Modifier Prenom de
l'Enseignant *\n");
printf(" * 4 - Retour Menu Principal
*\n");
do {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf(" * >> Tapez votre Choix:
*\n");
scanf("%d",&c);SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
}while ( (c!=1)&&(c!=2)&& (c!=3)&&(c!=4)&&(c!=0));
return c ;
}
int terminer(){
int c ;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x03);
printf("\n * 1- Retour Menu Principal
*\n");
do {
printf(" * >> Tapez votre Choix:
*\n");
scanf("%d",&c);
}while ( (c!=1)&&(c!=0));
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x0F);
printf("\n");
return c ;
}
for(i=0;i<tgroupe.size();i++)
{
cout<<"groupe "<<tgroupe[i].getDiplome()<<endl;
for(j=0;j<tgroupe[i].getListeGM().size();j++)
{
cout<<"gm "<<tgroupe[i].getElementGM(j).getNomGm()<<endl;
for(k=0;k<tgroupe[i].getElementGM(j).getListeMat().size();k++)
{
cout<<"mat
"<<tgroupe[i].getElementGM(j).getElemntMat(k).getNomMatiere()<<endl;///////////////
//////////////////////////////////////////
cout<<"prof
"<<tgroupe[i].getElementGM(j).getElemntMat(k).getEns().getNomPersonne()<<endl;
}
}
}
}
int main()
Etudiant etu(01,"fourat","bahrini","f@gmail",20063);
tetu.push_back(etu);
Etudiant etu2(03,"lina","gharbi","lina@gmail",20044);
tetu.push_back(etu2);
Enseignant ens(02,"hechmi","abd","hechmi@gmail",30063);
Enseignant ens1(8,"marouen","haouela","marouen@gmail",30063);
Enseignant ens2(8,"Lasaad","Hamrouni","hamrouni@gmail",30063);
Enseignant ens3(8,"Ichrak","mehrez","ichrak@gmail",30063);
Matiere m1("301","proba",1.0,ens);
Matiere m2("401","stat",2.0,ens1);
Matiere m3("601","Algo",3.0,ens2);
Matiere m4("701","Java",4.0,ens3);
listmat.push_back(m1);
listmat.push_back(m2);
listmat2.push_back(m3);
listmat2.push_back(m4);
note n1(m1,etu2,16,"ds");
note n3(m1,etu,12,"ds");
tnote.push_back(n1);tnote.push_back(n3);
note n2(m2,etu2,14,"ds");
note n4(m2,etu,10,"ds");
tnote.push_back(n2);tnote.push_back(n4);
note n5(m3,etu2,12,"ds");
note n6(m3,etu,11,"ds");
tnote.push_back(n5);tnote.push_back(n6);
note n8(m4,etu2,18,"ds");
note n7(m4,etu,9,"ds");
tnote.push_back(n8);tnote.push_back(n7);
GroupeModule gm2("501","info",3,listmat2);
GroupeModule gm1("201","math",1,listmat);
tgm.push_back(gm1);
tgm.push_back(gm2);
Groupe g("101","deuxieme","irm","it",1,tgm,tetu);
tgroupe.push_back(g);
int c=mainmenu();
while (c!=0)
{
if(c==1)
{
affichePV(tgroupe, tnote);c=terminer();
if (c==1){c=mainmenu();}
}
else if (c==2)
{ c=menuAFF();
if (c==1 ) {affichageToutlesGrp(tgroupe);c=terminer();if
(c==1){c=mainmenu();}}
else if(c==2 ) {affichageToutLesGM(tgroupe);c=terminer();if
(c==1){c=mainmenu();}}
else if(c==3 ) {affichageToutLesEtu(tgroupe);c=terminer();if
(c==1){c=mainmenu();}}
else if(c==4 ) {affichageToutLesMat;c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==5 ) {c=mainmenu();}
}
else if (c==3)
{
c=menuGestion();
if(c==1)
{
c=menuGestionGroupe();
if(c==1)
{
AjouterGroupe(tgroupe);
c=terminer();
if (c==1){c=mainmenu();}
}
else if(c==2)
{
SUPPGroupe(tgroupe);affiche(tgroupe);
c=terminer();
if (c==1){c=mainmenu();}
}
else if(c==3)
{
c=menuMAJgroupe();
if (c==1 ) {MAJgroupeNiveau(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==2 ) {MAJgroupeDilome(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==3 ) {MAJgroupeSpecialite(tgroupe);c=terminer();if
(c==1){c=mainmenu();}}
else if(c==4 ) {MAJgroupeNumG(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==5 ) {MAJgroupeAjoutGM(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==6 ) {MAJgroupeSppGM(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==7 ) {SUPPetudiantALL(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==8 )
{MAJGroupeAjouterEtudiant(tgroupe);c=terminer();if (c==1){c=mainmenu();}}
else if(c==9 )
{MajGroupeAjouterMatiereGm(tgroupe);c=terminer();if (c==1){c=mainmenu();}}
else if(c==10) {SuppMatGrp(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==11) {c=mainmenu();}
}
else if (c==4)
{
c=mainmenu();
}
}
else if(c==2)
{
c=menuGestionGM();
if(c==1)
{
AjouterGmALL(tgroupe);c=terminer();if (c==1){c=mainmenu();}
}
else if(c==2)
{
SuppGmALL(tgroupe);c=terminer();if (c==1){c=mainmenu();}
}
else if(c==3)
{
c=menuMAJGm();
if (c==1 ) {MAJgmNom(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==2 ) {MAJgmCoef(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==3 ) {MajGmAjoutMat(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==4 ) {MajGmSuppMat(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==5 ) {c=mainmenu();}
}
else if (c==4)
{
c=mainmenu();
}
}
else if(c==3)
{
c=menuGestionEtudiant();
if(c==1)
{
AjouterEtudiantALL(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}
}
else if(c==2)
{
SUPPetudiantALL(tgroupe);c=terminer();if (c==1){c=mainmenu();}
}
else if(c==3)
{
c=menuMAJEtu();
if (c==1 ) {MajEtudiantNom(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==2 ) {MajEtudiantPrenom(tgroupe);c=terminer();if
(c==1){c=mainmenu();}}
else if(c==3 ) {MajEtudiantMail(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==4 ) {c=mainmenu();c=terminer();if (c==1)
{c=mainmenu();}}
}
else if (c==4)
{
c=mainmenu();
}
}
else if(c==4)
{
c=menuGestionMatiere();
if(c==1)
{
AjoutMatALL(tgroupe);c=terminer();if (c==1){c=mainmenu();}
}
else if(c==2)
{
SuppMatiereALL(tgroupe);c=terminer();if (c==1){c=mainmenu();}
}
else if(c==3)
{
c=menuMAJMat();
if (c==1 ) {MajMatNom(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==2 ) {MajMatCoef(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==3 ) {MajMatiereProf(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==4 ) {c=mainmenu();}
}
else if (c==4)
{
c=mainmenu();
}
}
else if(c==5)
{
c=menuGestionProf();
if(c==1)
{
c=menuMAJEnseignant();
if (c==1 ) {MajProfNom(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==2 ) {MajProfPrenom(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==3 ) {MajProfMail(tgroupe);c=terminer();if (c==1)
{c=mainmenu();}}
else if(c==4 ) {c=mainmenu();c=terminer();if (c==1)
{c=mainmenu();}}
}
else if(c==2)
{
c=mainmenu();
}
}
else if(c==6)
{
c=menuGestionNote();
if(c==1)
{
AjouterNote(tnote);c=terminer();if (c==1){c=mainmenu();}
}
else if (c==2)
{
SUPPNote(tnote);c=terminer();if (c==1){c=mainmenu();}
}
else if (c==3)
{
c=mainmenu();
}
}
}
return 0;
}