#include <iostream> #include<conio.h> using namespace std; struct Fichier{ stri

#include <iostream> #include<conio.h> using namespace std; struct Fichier{ string nom,extension; float taille; }; struct Repertoire{ string nom; int Nbr_fichiers; Fichier *F[30]; }; void Creer_Rep(Repertoire *R){ cout<<"Entrez le nom du repertoire :"; cin>>R->nom; R->Nbr_fichiers=0; } void Modifier_Nom_Rep(Repertoire &R){ cout<<"Entrez le nouveau nom du repertoire :"; cin>>R.nom; } Fichier Creer_Fichier(){ Fichier F; cout<<"Entrez le nom du fichier :"; cin>>F.nom; cout<<"Entrez la taille du fichier :"; cin>>F.taille; cout<<"Entrez l'extension du fichier :"; cin>>F.extension; return F; } void Afficher_Fichier(Fichier *F){ cout<<endl; cout<<"Nom :"<<F->nom<<"\n"; cout<<"L'extension :"<<F->extension<<"\n"; cout<<"La taille :"<<F->taille<<"\n"; cout<<"----------------------------------\n"; } void Ajouter(Repertoire &Rep,Fichier *Fich){ Rep.F[Rep.Nbr_fichiers]=Fich; Rep.Nbr_fichiers++; } void Afficher(Repertoire Rep){ cout<<"Nom du repertoire :"<<Rep.nom; if(Rep.Nbr_fichiers!=0) { cout<<"\n\n*****La liste des fichiers*****\n"; for(int i=0;i<Rep.Nbr_fichiers;i++) Afficher_Fichier(Rep.F[i]); } else cout<<"Le repertoire ne contient aucun fichier !!"; } int Rechercher_nom(Repertoire Rep, string nom) { int i; for(i=0;i<Rep.Nbr_fichiers;i++) if(Rep.F[i]-> nom==nom) return i; return -1; } int Rechercher_extension(Repertoire Rep,string extension){ int i; for(i=0;i<Rep.Nbr_fichiers;i++){ if(Rep.F[i]->extension==extension) Afficher_Fichier(Rep.F[i]);} } void supprimer (Repertoire & Rep,string nom){ int pos=Rechercher_nom(Rep,nom); if(pos!=-1) { for(int i=0;i<Rep.Nbr_fichiers-1;i++) Rep.F[i]=Rep.F[i+1]; Rep.Nbr_fichiers--; } else cout<<"Le fichier ayant le nom "<<nom<<"n'exsite pas !!!!"; } void Renommer(Repertoire *Rep, string *A_nom, string N_nom){ int position=Rechercher_nom(Rep,A_nom); if (position!=-1){ Rep->F[position].nom,N_nom; cout<<"le fichier n'exciste pas:"<<A_nom; } } void Modifier(Repertoire &Rep, string *nom_fichier, float taille){ int position=Rechercher_Rep(Rep,nom_fichier); if (position!=-1){ Rep->F[position].taille=taille; cout<<"le fichier qui porte le nom " " n'exciste pas:"<<nom_fichier; } } float Gettaille(Repertoire &Rep){ int i; float somme_tailles_fichiers=0; for(i=0;i<Rep->Nbr_fichier;++) somme_tailles_fichiers+=Rep->F[i].taille; somme_tailles_fichiers/1024; } int menu(){ int choix; cout<<"##Menu##"<<endl; cout<<"/t pour creer un repertoire tapez 1 "<<endl; cout<<"/t Modifier le nom d'un repertoire tapez 2 "<<endl; cout<<"/t pour ajouter un fichier a un repertoire tapez 3"<<endl; cout<<"/t pour afficher le nom d'un repertoire et son contenue tapez 4 "<<endl; cout<<"/t pour quitter tapez 5 "<<endl; cout<<"/t/t Entrez votre choix :"; cin>>choix; return choix; } int main() { Repertoire Rep1; Fichier F1,F2,F3; Creer_Rep(&Rep1); F1=Creer_Fichier(); Ajouter(Rep1,&F1); F2=Creer_Fichier(); Ajouter(Rep1,&F2); F3=Creer_Fichier(); Ajouter(Rep1,&F3); Modifier_Nom_Rep(Rep1); Afficher(Rep1); cout<<"\n\t"<<Rechercher_nom(Rep1,"Dossier programmation"); Rechercher_extension(Rep1,"pdf"); supprimer(Rep1,"Document"); Renommer(Rep,A_nom,"Nouveau dossier"); Modifier(Rep,Nom_fichier,"78"); Gettaille(&Rep); getch(); } uploads/Science et Technologie/ exercice-tp2.pdf

  • 28
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager