Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<cstring>
- using namespace std;
- class Transport
- {
- private:
- float tezina_na_tovar;
- int dolzina_kilometri;
- public:
- Transport(float _tezina_na_tovar,int _dolzina_kilometri)
- {
- tezina_na_tovar=_tezina_na_tovar;
- dolzina_kilometri=_dolzina_kilometri;
- }
- float getTezinaTovar(){return tezina_na_tovar;}
- int getDolzina(){return dolzina_kilometri;}
- virtual float PresmetuvanjeCena()=0;
- friend ostream& operator<<(ostream &out,Transport &g)
- {
- out<<g.tezina_na_tovar<<""<<g.dolzina_kilometri<<""<<g.PresmetuvanjeCena()<<endl;
- return out;
- }
- };
- class Voz:public Transport
- {
- private:
- float potrosuvacka_struja;
- float cena_struja;
- public:
- Voz(float _tezina_na_tovar,int _dolzina_kilometri,float _potrosuvacka_struja,float _cena_struja):Transport(_tezina_na_tovar,_dolzina_kilometri)
- {
- potrosuvacka_struja=_potrosuvacka_struja;
- cena_struja=_cena_struja;
- }
- float getProsuvackaStruja(){return potrosuvacka_struja;}
- float getCenaStruja(){return cena_struja;}
- float PresmetuvanjeCena()
- {
- float c;
- c=getDolzina()*getProsuvackaStruja()*getCenaStruja();
- return c;
- }
- };
- class Brod:public Transport
- {
- private:
- float potrosuvacka_nafta;
- float cena_nafta;
- public:
- Brod(float _tezina_na_tovar,int _dolzina_kilometri,float _potrosuvacka_nafta,float _cena_nafta):Transport(_tezina_na_tovar,_dolzina_kilometri)
- {
- potrosuvacka_nafta=_potrosuvacka_nafta;
- cena_nafta=_cena_nafta;
- }
- float getPotrosuvackaNafta(){return potrosuvacka_nafta;}
- float getCenaNafta(){return cena_nafta;}
- float PresmetuvanjeCena()
- {
- float c;
- c=getDolzina()*getPotrosuvackaNafta()*getCenaNafta();
- return c;
- }
- };
- void NajeftinTrasport(Transport** p,int n)
- {
- int min=p[0]->PresmetuvanjeCena();
- for(int i=0;i<n;i++)
- {
- if(p[i]->PresmetuvanjeCena()<min)
- {
- min=p[i]->PresmetuvanjeCena();
- }
- }
- cout<<min<<endl;
- }
- int main()
- {
- Transport *pole[] = { new Voz (5000 , 850 , 4.5 , 38.5) , new Brod
- (40000 , 2000 ,85, 30) , new Voz (3000 , 400 , 5.6 , 40) };
- NajeftinTrasport(pole,3);
- for ( int i = 0; i < 3; i++) {
- delete pole[i];
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment