#include <iostream>
#include <cstdlib>
#include <string>
using namespace std;
//definisanje konstanti nabrajanja
typedef unsigned short int USHORT;
typedef unsigned long int ULONG;
enum BOOL {FALSE, TRUE};
enum IZBOR {DrawRect = 1, GetArea, GetPerim, ChangeDimension, Quit};
//Definicija klase Pravougaonik
class Pravougaonik
{
private:
USHORT sirina;
USHORT visina;
public:
Pravougaonik(USHORT s, USHORT v): sirina(s),visina(v){}//konstruktor
~Pravougaonik(){} //destruktor
//metodi
USHORT UzmiVisinu() const {return visina;}
USHORT UzmiSirinu() const {return sirina;}
ULONG UzmiPovrsinu() const{return sirina*visina;}
ULONG UzmiObim() const {return 2*visina + 2*sirina;}
void SetSize(USHORT novaSirina,USHORT novaVisina ):sirina(novaSirina), visina(novaVisina)
{}
void CrtajOblik() const;
};// kraj definicije klase Pravougaonik
//Prototipi funkcija
USHORT DoMenu();
void DoDrawRect(Pravougaonik);
void DoGetArea(Pravougaonik);
void DoGerPerim(Pravougaonik);
//glavna funkcija main
int main()
{
//Kreiranje instance
Pravougaonik pravougaonik(30,5);
USHORT izbor = DrawRect;
USHORT quit = FALSE;
while(!quit)
{
izbor = DoMenu();
if(izbor < DrawRect || izbor > quit)
{
cout<<"Neispravan izbor!!!Molimo vas pokusajte ponovo!!!"<<endl;
continue;
}
switch(izbor)
{
case DrawRect:
DoDrawRect(pravougaonik);
break;
case GetArea:
DoGetArea(pravougaonik);
break;
case GetPerim:
DoGetPerim(pravougaonik);
break;
case ChangeDimension:
USHORT novaSirina,novaVisina;
cout<<"Nova sirina> ";
cin >> novaSirina;
cout<<endl;
cout<<"Nova visina> ";
cin >> novaVisina;
pravougaonik.SetSize(novaSirina, novaVisina);
DoDrawRect(pravougaonik);
break;
case Quit:
quit = TRUE;
cout<<"Izlazak iz programa..."<<endl;
break;
case default:
cout<<"Greska u izboru!!!"<<endl;
quit = TRUE;
break;
} // kraj izbora switch
} // kraj while petlje
system("PAUSE");
return 0;
} // kraj funkcije main
[Ovu poruku je menjao Fidelito_Castro dana 17.07.2008. u 14:51 GMT+1]
[Ovu poruku je menjao Fidelito_Castro dana 17.07.2008. u 14:58 GMT+1]