Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <cstring>
- #include <cstdlib>
- using namespace std;
- ifstream f("date.in");
- ofstream g("date.out");
- struct Florarie
- {
- char specie[20], anotimp[20];
- int cantitate;
- float pret, pret_redus;
- } v[100];
- void citire(int &n, Florarie v[100])
- {
- f>>n;
- for(int i=1; i<=n; i++)
- {
- f>>v[i].specie>>v[i].anotimp>>v[i].cantitate>>v[i].pret;
- }
- }
- void afisare(int n, Florarie v[100])
- {
- for(int i=1; i<=n; i++)
- {
- g<<"Specia "<<v[i].specie<<" anotimp "<<v[i].anotimp<<" cantitate "<<v[i].cantitate<<" pret per bucata "<<v[i].pret<<"\n";
- cout<<"Specia "<<v[i].specie<<" anotimp "<<v[i].anotimp<<" cantitate "<<v[i].cantitate<<" pret per bucata "<<v[i].pret<<"\n";
- }
- }
- void nr_buchete(int n,Florarie v[100])
- {
- for(int i = 1; i<=n; i++)
- {
- g<<"Din specia "<<v[i].specie<<" se realizeaza " <<v[i].cantitate / 7<<" buchete.\n";
- cout<<"Din specia "<<v[i].specie<<" se realizeaza " <<v[i].cantitate / 7<<" buchete.\n";
- }
- cout<<endl<<endl<<"Intoarcerea in meniul principal se face apasand orice litera si tasta ENTER"<<endl;
- char g[1]; cin>>g;
- }
- void scoatere_flori_de_iarna(int &n, Florarie v[100])
- {
- int i=1;
- while(i<=n)
- {
- if(strcmp(v[i].anotimp,"iarna")==0)
- {
- for(int j=i+1; j<=n; j++)
- v[j-1]=v[j];
- n--;
- }
- else i++;
- }
- g<<"Dupa scoaterea florilor de iarna au ramas urmatoarele flori"<<endl;
- cout<<"Dupa scoaterea florilor de iarna au ramas urmatoarele flori"<<endl;
- for(i=1; i<=n; i++)
- {
- g<<v[i].specie<<endl;
- cout<<v[i].specie<<endl;}
- cout<<endl<<endl<<"Intoarcerea in meniul principal se face apasand orice litera si tasta ENTER"<<endl;
- char g[1]; cin>>g;
- }
- void flori_de_primavara(int n, Florarie v[100])
- {
- for(int i=1; i<=n; i++)
- {
- if(strcmp(v[i].anotimp,"primavara")==0 && v[i].cantitate==0)
- {
- g<<"\nSpecia de flori "<<v[i].specie<<" nu mai este in stocul de primavara";
- cout<<"\nSpecia de flori "<<v[i].specie<<" nu mai este in stocul de primavara";}
- }
- g<<endl;
- cout<<endl;
- cout<<endl<<endl<<"Intoarcerea in meniul principal se face apasand orice litera si tasta ENTER"<<endl;
- char g[1]; cin>>g;
- }
- void reducere_final_saptamana(int n, int i, Florarie v[100])
- {
- if(i == n + 1)
- {
- g <<"S-a facut reducere tuturor florilor"<<endl;
- cout<<endl<<endl<<"Intoarcerea in meniul principal se face apasand orice litera si tasta ENTER"<<endl;
- char g[1]; cin>>g;
- }
- else
- {
- v[i].pret = v[i].pret - v[i].pret * 1 / 10;
- reducere_final_saptamana(n, i+1, v);
- g<<v[i].specie<<" cantitate "<<v[i].cantitate<<" pret redus pe fir "<<v[i].pret<<endl;
- cout<<v[i].specie<<" cantitate "<<v[i].cantitate<<" pret redus pe fir "<<v[i].pret<<endl;
- }
- }
- int revizuire_stoc(int n, int i, Florarie v[100])
- {
- if(i == n + 1)
- { cout<<endl<<endl<<"Intoarcerea in meniul principal se face apasand orice litera si tasta ENTER"<<endl;
- char g[1]; cin>>g;
- return 0;
- }
- else
- {
- return v[i].cantitate + revizuire_stoc(n, i+1, v);
- }
- }
- void buchet_firma (int n, Florarie v[100] )
- {
- int k=0,i=1;
- while(i<=n)
- {
- if(v[i].cantitate>=8)
- k++;
- i++;
- }
- if(k>=3)
- {g<<"Buchetul se poate realiza";
- cout<<"Buchetul se poate realiza";}
- else {g<<"Buchetul nu se poate realiza";
- cout<<"Buchetul nu se poate realiza";}
- cout<<endl<<endl<<"Intoarcerea in meniul principal se face apasand orice litera si tasta ENTER"<<endl;
- char g[1]; cin>>g;
- }
- void comanda_saptamana_viitoare( int n, Florarie v[100])
- {
- int i;
- for(i=1; i<=n; i++)
- if(v[i].cantitate>=15)
- g<<"\nNu se mai face comanda pentru "<<v[i].specie<<endl;
- cout<<"\nNu se mai face comanda pentru "<<v[i].specie<<endl;
- cout<<endl<<endl<<"Intoarcerea in meniul principal se face apasand orice litera si tasta ENTER"<<endl;
- char g[1]; cin>>g;
- }
- void alegere (int n , Florarie v[100])
- {
- int op;
- do
- {
- if(system("CLS")) system("clear");
- cout<<"________________________________________"<<endl;
- cout<<" MENIU"<<endl;
- cout<<"1. Numarul buchetelor dintr-o specie "<<endl;
- cout<<"2. Scoaterea florilor de iarna din stoc"<<endl;
- cout<<"3. Stocul florilor de primavara"<<endl;
- cout<<"4. Buchetul solicitat de o firma"<<endl;
- cout<<"5. Reducerea de la final de saptamana"<<endl;
- cout<<"6. Stocul florariei"<<endl;
- cout<<"7. Comanda saptamanala"<<endl;
- cout<<"8. EXIT"<<endl;
- cout<<"________________________________________"<<endl;
- cout<<"Ce optiune doriti din meniu?"<<endl;
- cin>>op;
- if(op==1) nr_buchete(n,v);
- if(op==2) scoatere_flori_de_iarna(n,v);
- if(op==3) flori_de_primavara(n,v);
- if(op==4) buchet_firma(n,v);
- if(op==5) reducere_final_saptamana(n,1,v);
- if(op==6) { int stoc = revizuire_stoc(n, 1, v);
- g<<"\nSunt "<<stoc<<" fire in stoc";}
- if(op==7) comanda_saptamana_viitoare(n,v);
- if(op==8) afisare(n,v);
- }
- while (op<8);
- }
- int main()
- {
- int n,i;
- citire(n, v);
- alegere (n,v);
- g.close();
- f.close();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement