Középiskolai Matematikai és Fizikai Lapok
Informatika rovattal
Kiadja a MATFUND Alapítvány
Már regisztráltál?
Új vendég vagy?

Az I. 182. feladat (2008. március)

I. 182. Készítsünk szimulációs programot karakteres képernyőn autók körforgalomban közlekedéséről. A körforgalom két egymásra merőleges utat köt össze. A csatlakozó útszakaszok az óramutató járásával ellenkező irányban 1-től 4-ig számozottak. Az autókat ezek a számok jelképezik a karakteres képernyőn úgy, hogy mindegyik autón annak a kivezető útnak a száma van, amelyen az autó tovább szeretne haladni. Ez lehet az az út is, amelyen érkezik: ilyenkor tesz egy kört, és visszafordul.

Az utak körforgalom felé vezető sávjainak elején minden szimulációs lépésben pi (i\le4) valószínűséggel érkezik új autó (ha az i-edik út elején lévő mező szabad). A valószínűségek 0 és 1 közötti valós számok, melyeket a program a parancssor első négy argumentumaként kap meg. Az autók mindaddig állandó sebességgel haladnak, amíg az a mező, amelyre lépnének szabad. Ha egy náluk lassúbb jármű halad előttük, akkor átmenetileg fölveszik az előttük haladó sebességét. Az autók sebessége 1 és 5 közötti egész: 1 érték esetén az autó minden szimulációs lépésben továbbhalad (ha tud), 5 esetén csak minden ötödikben igyekszik továbbmenni, egyébként a helyén marad. A körforgalomban tartózkodó autóknak elsőbbségük van az oda behajtani kívánó autókkal szemben. A körfogalomból kifelé tartó autók a kivezető út végén eltűnnek.

A program a beolvasott valószínűségeket felhasználva mutassa be a járművek mozgását. A szimuláció a szóköz billentyű leütésére legyen megállítható, és a szimuláció sebessége 1-től 9-ig legyen állítható a számbillentyűkkel.

Beküldendő a program forráskódja (i182.pas, i182.cpp, ...), valamint a program rövid dokumentációja (i182.txt, i182.pdf, ...), amely tartalmazza a megoldás rövid leírását, és megadja, hogy a forrásállomány melyik fejlesztő környezetben fordítható.

(10 pont)

A beküldési határidő 2008. április 15-én LEJÁRT.


Egy Pascal és egy C++ megoldást közlünk mintaként: Fábián András 11. osztályos szegedi versenyző (i182.pas) és Szabó Gábor 10. osztályos budapesti diák munkáját (i182.cpp,i182.pdf).


Statisztika:

7 dolgozat érkezett.
10 pontot kapott:Fábián András, Horváth 135 Loránd, Szabó 313 Gábor, Véges Márton.
8 pontot kapott:1 versenyző.
7 pontot kapott:1 versenyző.
3 pontot kapott:1 versenyző.

A KöMaL 2008. márciusi informatika feladatai