You are on page 1of 16

-

: :

. - - 101650

, 2014
:

:
. ,
6 . : Vozilo,
: Avtomobil Kombe
:

1.

2.

3.

4.

5. 1

6.
:Vozilo

: :

-br_kar - Konstruktor()

-datum_na_proizvodstvo -Prikazi_podatoci()

-datum_na_donesuvanje_vo_pretprijatie -Presmetaj_servis()

-marka

-datum_na_posleden_servis

:Avtomobil :Kombe

: :

-br_sedista -nosivost
:

#include<iostream>

#include<string.h>

using namespace std;

int broj=0,za_servisiranje[50],t=0,pomos=0;

void dodaj();

void prikazi_br();

void prikazi();

void prikazi_servis();

void prikazi_grupa();

class Vozilo

public://definiranje na atributite t.e metodite vo klasata vozilo

Vozilo(char* m, int bk,int dp,int mp,int gp,int dd,int md,int gd,int ds,int
ms,int gs):

marka(m),br_kar(bk),den_p(dp),mesec_p(mp),godina_p(gp),

den_d(dd),mesec_d(md),godina_d(gd),den_s(ds),mesec_s(ms),godina_s(gs)
{}//konstruktor

virtual void prikazi_podatoci()//ovoj metod ni e virutelen t.e go nasleduvat i


dvete klasi avtomobil i kombe
{

cout<<"marka:"<<marka<<endl;

cout<<"broj na karoserija:"<<br_kar<<endl;

cout<<"datum na
proizvodstvo:"<<den_p<<"."<<mesec_p<<"."<<godina_p<<endl;

cout<<"datum na carinarenje:"<<den_d<<"."<<mesec_d<<"."<<godina_d<<endl;

cout<<"datum na posleden
servis:"<<den_s<<"."<<mesec_s<<"."<<godina_s<<endl;

virtual void presmetaj_servis(){}

virtual void prikazi_ga(){}

virtual void prikazi_gk(){}

protected://definiranje na podatocite vo klasata vozilo so pristap protected

int br_kar,den_p,mesec_p,godina_p;

int den_d,mesec_d,godina_d;

int den_s,mesec_s,godina_s;

char* marka;

*pok[50];//kreirame 50 instanci t.e pokazuvaci od klasata Vozilo


class Avtomobil:public Vozilo //klasata Avtomobil nasleduva od vozilo

public:

Avtomobil(char*,int,int,int,int,int,int,int,int,int,int,int);//konstruktor

void prikazi_podatoci()//definiranje na metodot prikazi podatoci vo ovaa klasa


Avtomobil a se povikuva i prethodniot metod od Vozilo

cout<<"Avtomobil:\n";

cout<<"broj na sedista:"<<br_sedista<<endl;

Vozilo::prikazi_podatoci();

void presmetaj_servis() //imame implementacija na apstraktniot metod od klasata


od koja sto nasleduvame Vozilo

if (mesec_s<7)

za_servisiranje[t++]=mesec_s+6;

else

za_servisiranje[t++]=mesec_s+6-12;

void prikazi_ga()

cout<<"broj na sedista:"<<br_sedista<<endl;

Vozilo::prikazi_podatoci();

}
private: //podatoci vo Avtomobil

int br_sedista;

};

Avtomobil::Avtomobil(char* m,int bk,int dp,int mp,int gp,int dd,int md,int gd,int


ds,int ms,int gs,int b):Vozilo(m,bk,dp,mp,gp,dd,md,gd,ds,ms,gs),br_sedista(b)
{} //konstruktor

class Kombe:public Vozilo //klasata Kombe nasleduva od vozilo

public:

Kombe(char*,int,int,int,int,int,int,int,int,int,int,int); //konstruktor

void prikazi_podatoci() //redefeniranje na metodot prikazi_podtaoci od vozilo

cout<<"Kombe:\n";

cout<<"nosivost:"<<nosivost<<endl;

Vozilo::prikazi_podatoci();

void presmetaj_servis() //redefiniranje na metod od vozilo

za_servisiranje[t++]=mesec_s;

void prikazi_gk()//isto i tuka imame redefiniranje na metod

cout<<"nosivost:"<<nosivost<<endl;

Vozilo::prikazi_podatoci();
}

private: //podatok za Kombe

int nosivost;

};

Kombe::Kombe(char* m,int bk,int dp,int mp,int gp,int dd,int md,int gd,int ds,int
ms,int gs,int n):Vozilo(m,bk,dp,mp,gp,dd,md,gd,ds,ms,gs),nosivost(n){}
//konstruktor

int main() //glavna programa

int i,izbor=0; //pomosni promenlivi

for (i=0;i<=50;i++)//50-te pokazuvaci inicijalizirani da ne pokazuvat nikade

pok[i]=0;

cout<<"=============== VOZILA ==============="<<endl<<endl;

do //pecatenje meni na ekran

{ cout<<"1.Dodavanje na vozilo\n";

cout<<"2.Prikazuvanje na brojna sostojba\n";

cout<<"3.Prikazuvanje na vozilata od dadena grupa\n";

cout<<"4.Prikazuvanje na celata lista\n";

cout<<"5.Prikazuvanje na site vozila koi treba da se servisiraat vo rok od 1


mesec\n";

cout<<"6.Izlez od menito\n\n";
cout<<"VI BLAGODARAM ZA VNIMANIETO"<<endl;

cout<<"PRI PREZENTACIJATA NA MOJATA SEMINARSKA RABOTA"<<endl;

cin>>izbor;

switch(izbor)

case 1:dodaj();

break;

case 2:prikazi_br();

break;

case 3:prikazi_grupa();

break;

case 4: prikazi();

break;

case 5:prikazi_servis();

break;

case 6: break;

default:cout<<"Vnesovte pogresna vrednost!!!\n";

while(izbor<6);

void dodaj()

{
int i=0,izbor,a,b,n,d1,m1,g1,d2,m2,g2,d3,m3,g3;

char m[20];

while(pok[i]!=0)

i++;

cout<<"Avtomobil ili Kombe (1/2) ";

cin>>izbor;

switch(izbor)

case 1:

broj++;

cout<<"broj na karoserija:";

cin>>a;

cout<<"broj na sedista:";

cin>>b;

cout<<"datum na proizvodstvo:\n";

cout<<"den:";

cin>>d1;

cout<<"mesec:";

cin>>m1;

cout<<"godina:";

cin>>g1;

cout<<"datum na carinarenje:\n";
cout<<"den:";

cin>>d2;

cout<<"mesec:";

cin>>m2;

cout<<"godina:";

cin>>g2;

cout<<"marka:";

gets(m);

cout<<"datum na posleden servis:\n";

cout<<"den:";

cin>>d3;

cout<<"mesec:";

cin>>m3;

cout<<"godina:";

cin>>g3;

pok[i]=new Avtomobil(m,a,d1,m1,g1,d2,m2,g2,d3,m3,g3,b);//dodadi
Avtomobili i toa so pirmena na plimorfizam so instanci od osnovna klasa pristapi
kon izveden klasa

break;

case 2:

broj++;

cout<<"broj na karoserija:";

cin>>a;

cout<<"nosivost:";
cin>>n;

cout<<"datum na proizvodstvo:\n";

cout<<"den:";

cin>>d1;

cout<<"mesec:";

cin>>m1;

cout<<"godina:";

cin>>g1;

cout<<"datum na carinarenje:\n";

cout<<"den:";

cin>>d2;

cout<<"mesec:";

cin>>m2;

cout<<"godina:";

cin>>g2;

cout<<"marka:";

cin>>m;

cout<<"datum na posleden servis:\n";

cout<<"den:";

cin>>d3;

cout<<"mesec:";

cin>>m3;

cout<<"godina:";

cin>>g3;
pok[i]=new Kombe(m,a,d1,m1,g1,d2,m2,g2,d3,m3,g3,n);//dodadi
Kombei i toa so pirmena na plimorfizam so instanci od osnovna klasa pristapi
kon izveden klasa

break;

default:cout<<"Vnesovte pogresna vrednost!\n";

void prikazi_br()//priakzuva broj na vozila

cout<<"Pretprijatieto vo momentov poseduva "<<broj<<" vozila!\n";

void prikazi()//prikazuva podatocite za site voizla

int i=0;

while (pok[i]!=0)

pok[i++]->prikazi_podatoci();

void prikazi_servis()//priakzuva koi vozial se za servis

int pom,i=0;

cout<<"za koj mesec ke gi barame vozilata sto treba da se servisiraat? ";

cin>>pom;
while (pok[i]!=0)

pok[i]->presmetaj_servis();

if (za_servisiranje[i]==pom)

pok[i]->prikazi_podatoci();

i++;

void prikazi_grupa()//prikazuva posebno Avtomobili ili Kombei

int izbor,i=0;

cout<<"Avtomobili ili Kombei (1/2) ";

cin>>izbor;

pomos=izbor;

if (pomos==1)

while (pok[i]!=0)

pok[i++]->prikazi_ga();

else

while (pok[i]!=0)

pok[i++]->prikazi_gk();

}
:

You might also like