Autópálya
|
#include <auto.h>
Public Member Functions | |
Auto (bool allo) | |
bool | volt_mar () const |
void | megvolt () |
int | sebesseg_valtozas (int kovi_auto) |
Private Attributes | |
int | seb |
bool | voltmar |
Static Private Attributes | |
static const int | max_seb = 5 |
static const int | lassulas_esely = 15 |
Az autópálya egy autóját modellező osztály. Feladata az autó sebességét tárolni, és a sebességét változtatni a feladatkiírásban leírt első három pont alapján.
Auto::Auto | ( | bool | allo | ) |
Az Auto osztály konstruktora. Álló helyzetben 0-ra, egyébként max_seb/2-re inicializálja a sebsséget.
allo | Igaz, ha álló helyzetből szeretnénk indítani az autót. |
|
inline |
Megváltoztatja az autó állapotát arra, hogy még nem volt ebben a ciklusban. A voltmar tagváltozó setter függvénye, ami mindig hamisra állítja az értékét, hiszen kívülről csak ebben az irányban használt. (Új ciklus kezdetén használandó)
int Auto::sebesseg_valtozas | ( | int | kovi_auto | ) |
A feladatkiírásban megadott első három lépést végzi el, vagyis beállítja az autó új sebességét. Végül megváltoztatja az autó állapotát arra, hogy már volt ebben a ciklusban. Ha a CPORTA makró definiálva van, a 3. lépést (véletlenszerű lassulás) kihagyja.
kovi_auto | Hány üres cella van a következő autó előtt, azaz mennyi lehet az autó maximális sebessége a függvény végén. |
|
inline |
Volt-e már ez az autó az adott ciklusban? A voltmar tagváltozó getter függvénye.
|
staticprivate |
Annak a valószínűsége*100, hogy egy autó egy ciklusban egy egységet lassul, feladatkiírás szerint 15.
|
staticprivate |
Az autók maximális sebessége, feladatkiírás szerint 5.
|
private |
Az autó jelenlegi sebessége
|
private |
Volt-e már vizsgálva az autó az adott ciklusban?