Informatică, întrebare adresată de bogdan106, 8 ani în urmă

Se cunosc date despre vânzările a n cărţii ale editurii Donaris: titlul cărţii,
preţul, cantitatea intrată în depozit (numărul de exemplare tipărite) şi cantitatea
vândută. Realizaţi un program care care să permită prin intermediul unui meniu
următoarele acţiuni :
- numărul titlurilor care s-au vândut cel mai bine;
-valoarea totală a vânzărilor ( suma încasată pe un titlu fiind preţul * numărul de
exemplare);
-topul celor mai bine vândute p cărţi unde valoarea lui p se citeşte de la
tastatură .

Răspunsuri la întrebare

Răspuns de NegrucaPantera
1

Răspuns:

#include <bits/stdc++.h>

#include <stdlib.h>

using namespace std;

int main()

{

   int n;

   cout<<"Cate titluri exista? : ";

   cin>>n;

   string titlu[n];

   int pret[n],ies[n],intra[n],poz[n];

   long long int suma=0;

   int j=1;

   int i;

   for(i=1;i<=n;i++)

   {

       system("cls"); //Folosesc impreuna cu biblioteca stdlib.h pentru a curata ecranul(este optional)

       cout<<"Care este titlul cartii ? : ";

       cin>>titlu[i];

       cout<<"\n";

       cout<<"Care este pretul cartii ? : ";

       cin>>pret[i];

       cout<<"\n";

       cout<<"Cate carti au fost aduse ? : ";

       cin>>intra[i];

       cout<<"\n";

       cout<<"Cate carti au fost vandute ? : ";

       cin>>ies[i];

       //Presupun ca titlurie care s-au vandut bine sunt cele care s-au vandut in numar egal cu cele aduse

       if(intra[i]==ies[i])

           {

               poz[j]=i;

               j++;

           }

       suma=suma+ies[i]*pret[i];

   }

   system("cls");

   int p;

   cout<<"Topul a cator carti vreti sa-l vedeti ? : ";

   cin>>p;

   string mesaj="Titlurile care s-au vandut cel mai bine sunt : ";

   cout<<mesaj;

   for(i=1;i<=j;i++)

       cout<<titlu[poz[i]];

   cout<<"\n";

   string mesaj2="Suma totala obtinuta din vanzari este de : ";

   cout<<mesaj2<<suma;

   cout<<"\n";

   int k;

   int top=0;

   int t=0;

   int top_poz[n];

   while(p)

   {

       for(i=1;i<=n;i++)

           {

             if(ies[i]-intra[i]==top)

             {

                 top_poz[t]=i;

                 t++;

                 p--;

             }

           }

       top++;

   }

   cout<<"Primele "<<p<<" carti care s-au vandut cel mai bine sunt : ";

   for(k=1;k<=t;k++)

       cout<<titlu[top_poz[k]]<<" , ";

}

Explicație:


bogdan106: Multumesc!
Alte întrebări interesante