Sunteți pe pagina 1din 2

#include<iostream.h> #include<string.

h> //pentru evidenta cartilor dintr-o biblioteca se inregisteraza titlul pretul, nr de exemplare si valoarea cartii //val=(pret*nr ex), sa se eralizeze urm: introducerea unui noi carti, det valori i totale a cartilor din biblioteca //3 afisarea infirmatiilor using namespace std; struct carte { char titlu[100]; float p,val; int nr; }v[100]; void adaugare (carte v[], int &n) { cin.get(); cout<<"Titlul cartii: "; cin.get(v[n].titlu,100); cout<<"Pretul cartii: "; cin>>v[n].p; cout<<"Numar exemplare: "; cin>>v[n].nr; v[n].val=v[n].p*v[n].nr; n++; } void afisare (carte v[], int n) { for(int i=0;i<n;i++) cout<<v[i].titlu<<" "<<v[i].p<<" "<<v[i].val<<" "<<v[i].nr<<endl; } float suma(carte v[], int n) { float sum=0; int i; for(i=0;i<n;i++) sum=sum+v[i].val; return sum; } void sortare_val(carte v[], int n) { carte aux; int i,ok; do { ok=1; for(i=0;i<n-1;i++) if(v[i].val>v[i+1].val) { aux=v[i]; v[i]=v[i+1]; v[i+1]=aux; ok=0; } }while(ok==0); } void alfab(carte v[], int n) { int i,ok; carte aux; do{ ok=0; for(i=0;i<n-1;i++) if(strcmp(v[i].titlu,v[i+1].titlu)>0) {

aux=v[i]; v[i]=v[i+1]; v[i+1]=aux; ok=1; } } while(ok); } void afisalf(carte v[], int n) { int i; for(i=0;i<n;i++) cout<<v[i].titlu<<endl; } void pret(carte v[], int n) { int i; for(i=0;i<n;i++) if(v[i].p>=10 && v[i].p<=30) cout<<v[i].titlu<<endl; } int main() { int o,n=0; cout<<"Alegeti una dintre urmatoarele optiuni: "; cout<<"\n1. Introducerea unei noi carti"; cout<<"\n2. Determinarea valorii totale a cartilor din biblioteca"; cout<<"\n3. Afisarea informatiilor"; cout<<"\n4. Sortare carti crescator in functie de valoare"; cout<<"\n5. Afisare carti in ordine alfabetica"; cout<<"\n6. Afisare carti cu pret intre 10 si 30 RON"; cout<<"\n7. Afisare carti al caror titlu contin cuvantul poezii"; cin>>o; do { switch(o) { case 1: adaugare(v,n); break; case 2: cout<<suma(v,n); break; case 3: afisare(v,n); break; case 4: sortare_val(v,n); afisare (v,n);break; case 5: alfab(v,n); afisalf(v,n); break; case 6: pret(v,n); break; } cout<<"Dati o noua optiune: "; cin>>o; } while(o<=7&&o>=1); }

S-ar putea să vă placă și