Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include<string.h> // istoto moze so <cstring>
- using namespace std;
- class Proizvod
- {
- private:
- char ime[20];
- int shifra;
- int kolZal;
- int kolProd;
- public:
- Proizvod(char *imev="",int shifrav = 1,int kolZalv = 0,int kolProdv =0)
- {
- strcpy(ime, imev);
- shifra = shifrav;
- kolZal = kolZalv;
- kolProd = kolProdv;
- }
- Proizvod(const Proizvod &P)
- {
- strcpy(ime,P.ime);
- kolProd = P.kolProd;
- shifra = P.shifra;
- kolZal = P.kolZal;
- }
- int getShifra()
- {
- return shifra;
- }
- int getkolZal()
- {
- return kolZal;
- }
- void pechati()
- {
- cout<<ime<<" "<<shifra<<" "<<kolZal<<" "<<kolProd<<endl;
- }
- };
- void SortRS(Proizvod *niza, int brP)
- {
- for(int i = 0; i < brP; i++)
- for(int j = i+1; j < brP; j++)
- if(niza[j].getShifra()<niza[i].getShifra())
- {
- Proizvod temp;
- temp = niza[i]; // samo ako nema dinamicka alokacija
- niza[i] = niza[j];
- niza[j] = temp;
- }
- for(int i = 0; i < brP;i++)
- niza[i].pechati();
- }
- void SortOS(Proizvod *niza, int brP)
- {
- for(int i = 0; i < brP; i++)
- for(int j = i+1; j < brP; j++)
- if(niza[j].getShifra() > niza[i].getShifra())
- {
- Proizvod temp;
- temp = niza[i]; // samo ako nema dinamicka alokacija
- niza[i] = niza[j];
- niza[j] = temp;
- }
- for(int i = 0; i < brP;i++)
- niza[i].pechati();
- }
- void SortRK(Proizvod *niza, int brP)
- {
- for(int i = 0; i < brP; i++)
- for(int j = i+1; j < brP; j++)
- if(niza[j].getkolZal()<niza[i].getkolZal())
- {
- Proizvod temp;
- temp = niza[i]; // samo ako nema dinamicka alokacija
- niza[i] = niza[j];
- niza[j] = temp;
- }
- for(int i = 0; i < brP;i++)
- niza[i].pechati();
- }
- void SortOK(Proizvod *niza, int brP)
- {
- for(int i = 0; i < brP; i++)
- for(int j = i+1; j < brP; j++)
- if(niza[j].getkolZal() > niza[i].getkolZal())
- {
- Proizvod temp;
- temp = niza[i]; // samo ako nema dinamicka alokacija
- niza[i] = niza[j];
- niza[j] = temp;
- }
- for(int i = 0; i < brP;i++)
- niza[i].pechati();
- }
- int main()
- {
- Proizvod proizvodi[4] = {Proizvod("Koka kola", 103,10,100), Proizvod("sprite",24,2,20),Proizvod("hamburger",5,2,20),Proizvod("ajvar",3,10,25)};
- int brP = 4;
- cout<<"Drag korisniku, vnesete kako sakate da sortirame:"<<endl;
- int ks;
- cin>>ks;
- if((ks!=1)&&(ks!=2))
- ks = 1;
- cout<<"vnesete dali po rastecki ili opagjacki redosled:"<<endl;
- int rr;
- cin>>rr;
- if((rr!=1)&&(rr!=2))
- rr = 1;
- if (ks == 1)
- {
- if(rr == 1)
- SortOS(proizvodi, brP);
- else
- SortOS(proizvodi, brP);
- }
- else
- {
- if(rr == 1)
- SortRK(proizvodi,brP);
- else
- SortOK(proizvodi, brP);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement