bank-program, WAT, SEMESTR V, podstawy symulacji, projekty, PS, PSym


MAIN MODULE bank;

FROM ListMod IMPORT QueueList;

FROM RandMod IMPORT RandomObj;

FROM SimMod IMPORT SimTime, StartSimulation;

TYPE

OkienkoObj= OBJECT; FORWARD;

KolejkaObj= OBJECT(QueueList)

dlugosc: INTEGER;

okienko: OkienkoObj;

ASK METHOD UstawOkienko(IN okno: OkienkoObj);

ASK METHOD UstawDlugosc(IN dl: INTEGER);

OVERRIDE

ASK METHOD Add(IN NewMember : ANYREC);

END OBJECT;

OkienkoObj= OBJECT(RandomObj)

SrCzasObs: REAL;

kolejka: KolejkaObj;

SrCzasWBanku: REAL;

wolne: BOOLEAN;

TELL METHOD ObslugaKlienta;

ASK METHOD UstawSrCzasObs(IN czas: REAL);

ASK METHOD UstawKolejke(IN kol: KolejkaObj);

END OBJECT;

OtoczenieObj= OBJECT(RandomObj)

SrOdstep: REAL;

kolejka: KolejkaObj;

ASK METHOD UstawSrOdstep(IN czas: REAL);

ASK METHOD UstawKolejke(IN kol: KolejkaObj);

TELL METHOD GenerujKlientow;

END OBJECT;

KlientRec= RECORD

CzasWej: REAL;

END RECORD;

OBJECT OkienkoObj;

TELL METHOD ObslugaKlienta;

VAR

klient: KlientRec;

co: REAL;

BEGIN

wolne:=FALSE;

WHILE ASK kolejka numberIn > 0

klient:=ASK kolejka TO Remove;

co:=ASK SELF TO Exponential(SrCzasObs);

WAIT DURATION co

END WAIT;

SrCzasWBanku:=SrCzasWBanku + SimTime - klient.CzasWej;

END WHILE;

wolne:=TRUE;

END METHOD;

ASK METHOD UstawSrCzasObs(IN czas: REAL);

BEGIN

SrCzasObs:=czas;

wolne:=TRUE;

END METHOD;

ASK METHOD UstawKolejke(IN kol: KolejkaObj);

BEGIN

kolejka:=kol;

END METHOD;

END OBJECT;

{------- kolejka--------------------}

OBJECT KolejkaObj;

ASK METHOD UstawOkienko(IN okno: OkienkoObj);

BEGIN

okienko:=okno;

END METHOD;

ASK METHOD UstawDlugosc(IN dl: INTEGER);

BEGIN

dlugosc:=dl;

END METHOD;

ASK METHOD Add(IN NewMember : ANYREC);

BEGIN

IF numberIn < dlugosc

INHERITED Add(NewMember);

IF ASK okienko wolne

TELL okienko TO ObslugaKlienta;

END IF;

ELSE

DISPOSE(NewMember);

END IF;

END METHOD;

END OBJECT;

{---------OtoczenieObj-------------}

OBJECT OtoczenieObj;

ASK METHOD UstawSrOdstep(IN czas: REAL);

BEGIN

SrOdstep:=czas;

END METHOD;

ASK METHOD UstawKolejke(IN kol: KolejkaObj);

BEGIN

kolejka:=kol;

END METHOD;

TELL METHOD GenerujKlientow;

VAR

klient: KlientRec;

odstep: REAL;

BEGIN

WHILE SimTime < 10000.0

odstep:=Exponential(SrOdstep);

WAIT DURATION odstep

END WAIT;

NEW(klient);

klient.CzasWej:=SimTime;

ASK kolejka TO Add(klient);

END WHILE;

END METHOD;

END OBJECT;

VAR

okienko: OkienkoObj;

otoczenie: OtoczenieObj;

kolejka: KolejkaObj;

BEGIN

NEW(okienko);

NEW(otoczenie);

NEW(kolejka);

ASK okienko TO UstawKolejke(kolejka);

ASK okienko TO UstawSrCzasObs(20.0);

ASK otoczenie TO UstawKolejke(kolejka);

ASK otoczenie TO UstawSrOdstep(10.0);

ASK kolejka TO UstawOkienko(okienko);

ASK kolejka TO UstawDlugosc(10);

TELL otoczenie TO GenerujKlientow;

StartSimulation;

DISPOSE(okienko);

DISPOSE(otoczenie);

DISPOSE(kolejka);

END MODULE.



Wyszukiwarka

Podobne podstrony:
2008-Laboratorium-zadania, WAT, SEMESTR V, podstawy symulacji, projekty, PS, PSym
zadania laboratoryjne, WAT, SEMESTR V, podstawy symulacji, projekty, PS, RURKU, psy lrm-20091111, la
egzamin 00, WAT, SEMESTR V, podstawy symulacji, psy, symulacja, symulacja egzamin
PSy - Sprawozdanie, WAT, SEMESTR V, podstawy symulacji, 17 moj
I9G2S1 Wegrecki sprawozdanie, WAT, SEMESTR V, podstawy symulacji
PKM projekt, Lotnictwo i Kosmonautyka WAT, semestr 3, Podstawy konstrukcji maszyn, Projekt przekładn
Projekt most lpt, 1. Semestr V, Podstawy Mostownictwa, Projekt, Przykładowy Projekt 1
interpolacja projekt, Automatyka i Robotyka, Semestr 1, Podstawy Sterowania, projekt1-Interpolacja
interpolacje projekt2, Automatyka i Robotyka, Semestr 1, Podstawy Sterowania, projekt1-Interpolacja
projekt 2, Automatyka i Robotyka, Semestr 1, Podstawy Sterowania, projekt2-Proste zadanie kinematyki
interpolacja projekt1, Automatyka i Robotyka, Semestr 1, Podstawy Sterowania, projekt1-Interpolacja
projekt 1, Automatyka i Robotyka, Semestr 1, Podstawy Sterowania, projekt2-Proste zadanie kinematyki
opracowane zagadnienia na egz - Kopia, Zarządzanie ZZL studia WAT, I SEMESTR, Podstawy Zarządzania
Projekt most, 1. Semestr V, Podstawy Mostownictwa, Projekt, Przykładowy projekt 2
I0E1S1 Muszy-ski Macha-owski, WAT, semestr V, podstawy bezpieczeństwa informacji
podstawy symulacji projekt

więcej podobnych podstron