Kezdőoldal » Számítástechnika » Programozás » Tudnátok segíteni az alábbi...

Tudnátok segíteni az alábbi programban? (c++)

Figyelt kérdés

Készítsen objektummodellt az autópálya forgalmának modellezésére!


Egy L cellára osztott autópályán N autó van. Egy cellában csak egy autó tartózkodhat egyszerre, így L-N cella üres. Minden autónak van egy egész értékű sebessége.

A szimulációt ciklusonként végezzük.

Minden ciklusban minden autóra elvégezzük a következő műveleteket:


1. Ha egy autó sebessége még nem érte el a maximumot (5), akkor a sebességét eggyel megnöveljük.

2. Ha egy autó előtt levő üres cellák száma (az előtte levő autóig)kisebb, mint a sebessége, akkor az autó sebességet lecsökkentjük az előtte levő üres cellák számának megfelelő értékre.

3. Egy adott p(=0.15) valószínűséggel lecsökkentjük a mozgó autók sebességet eggyel. (Vezetők figyelmetlensége).

4. Minden autót előremozgatunk annyi cellával, amennyi a sebessége.

Egyszerű karakteres kimenetet feltételezve "rajzolja ki" az autópálya állapotát egy-egy szimulációs ciklus után.



#program #C++ #c plus plus #objektummodell
2014. ápr. 19. 18:23
 1/9 anonim ***** válasza:
Legalább kezdd el.
2014. ápr. 19. 18:25
Hasznos számodra ez a válasz?
 2/9 A kérdező kommentje:

Eredetileg úgy akartam, hogy egyetlen osztályt csinálok, melyben lesz egy tetszőleges méretű tömb és ebben, az üres cellák 0-ák lennének az autók pedig a sebességüknek megfelelő érték.

De a tanár problémája ezzel az volt, hogy nem objektummodell.

Ő azt javasolta, hogy legyen egy Autopalya,Cella,Auto osztály és ezek között a megfelelő osztálykapcsolatok:

(öröklés, asszociáció, kompozíció, aggregáció)

Szóval eben kéne segítség, hogy ezek hogy is nézhetnének ki?És a fenti 4 függvény mind az Autopalya class-ban legyen?

2014. ápr. 19. 18:30
 3/9 Tengor ***** válasza:

Legyen egy Autó osztályod, aminek van ID-je és sebessége.

Legyen egy Cella osztályod is, aminek mondjuk ID-je van és egy Autó objektumot tartalmaz.

Aztán kell még egy Autópálya osztály, ami tartalmazza cella objektumok egy listáját.

Utána pedig össze lehet őket drótozni.

2014. ápr. 19. 20:31
Hasznos számodra ez a válasz?
 4/9 A kérdező kommentje:
És így hogy oldom meg azt hogy az autópálya hosszát(azaz a cellák számát) a felhasználó adhassa meg?Akárcsak az autók számát, és ezután véletlen helyekre beteszennyi véletlen (1-5-ig)sebességű autót?Ez megoldható lesz?
2014. ápr. 21. 17:49
 5/9 anonim ***** válasza:
Ha lekódolod meg.
2014. ápr. 21. 17:59
Hasznos számodra ez a válasz?
 6/9 Tengor ***** válasza:

Miért ne lehetne megoldani?

Ha már úgy is kell konstruktort írni, akkor az autópálya osztály konstruktora lehetne a pálya hossza. Először bekéred a hosszt, majd létrehozod az objektumot.

2014. ápr. 21. 18:04
Hasznos számodra ez a válasz?
 7/9 A kérdező kommentje:

Valahogy így?Vagy ez nagyon rossz?


class Auto{

protected:

int sebesseg;

};


class Cella{

protected:

Auto car;

};


class Autopalya{

Cella* hossz;

int meret;

public:

Autopalya(){}

Autopalya(int siz=20,int kocsi_db=5):meret(siz){

hossz=new Cella[meret];

//és ide írjam a véletlen helyekre történő autó

begenerálást?Ha igen hogy?

}


};

2014. ápr. 21. 20:28
 8/9 Tengor ***** válasza:

Valahogy így...

Generálj random számokat 0 és a méret között. Adott szám esetén nézd meg, hogy ott van-e már autó, ha nincs, akkor tegyél oda, ha van, akkor generálj egy új számot a foglalt helyett.

2014. ápr. 22. 06:54
Hasznos számodra ez a válasz?
 9/9 A kérdező kommentje:
Köszönöm szépen az eddigi segítséget.Ha esetleg még elakadnék remélem továbbra is számíthatok rátok.
2014. ápr. 22. 19:25

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!