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. 323. feladat (2013. május)

I. 323. A debreceni villamos tanítási időszak alatti menetrendje alapján utastájékoztató szolgáltatást szeretnénk készíteni. A honlapunkról letölthető a debreceni 1-es villamos menetrendjét tartalmazó menetrend.txt fájl (tabulátorokkal tagolt, UTF-8 kódolású szövegállomány).

Nyissuk meg táblázatkezelő program segítségével a menetrend.txt fájlt úgy, hogy az első beolvasott adat az A1-es cellába kerüljön. A táblát mentsük a táblázatkezelő saját formátumában i323 néven.

A munkafüzet menetrend munkalapján az A oszlopban a körjáratban üzemelő villamos Nagyállomás végállomásáról induló szerelvények indulási idői, a C oszlopban a megállók nevei és a D oszlopban az állomások közötti menetidők vannak.

Az E oszlopban számoljuk ki a Nagyállomástól mért menetidőket a minta szerinti formátumban. A körjárat miatt azonos nevű megállók vannak a táblázatban.

A tájékoztató adatoknak - a mintán már nem látható - E oszlopban kell megjelenniük, a B1:B3 cellákban megadott adatok alapján.

A megoldás során a G oszloptól jobbra végezhetünk segédszámításokat, amelyeket lássunk el magyarázó szöveggel.

Az E1 cellában a helyes vagy helytelen felirat jelenjen meg a B1:B3 cellákban lévő paraméterek használhatósága alapján. Értelem szerint helytelen a felirat, ha nem létező megállóneveket, vagy ha a szerelvény végállomásról induló időpontja üzemidőn kívüli lenne, vagy ha egyéb hibás adatot adunk meg. Igyekezzünk minél több hibát kiszűrni és ezeket a segédszámítás területén dokumentálni. A helytelen felirat megjelenése esetén a további információs cellákban ne jelenjen meg semmi.

Az E2 cellában jelenítsük meg a villamos menetrendszerinti pontos érkezési idejét, amelyre az utas a cél irányába először felszállhat. (Egyszer talán a valóságban is így lesz.)

Az E3 cellában határozzuk meg, hogy a célállomásra mikor érkezik meg a villamos.

Az E4 és az E5 cellában írjuk ki, hogy az utazás során hány megállót és mennyi menetidő alatt tesz meg a villamos.

Beküldendő egy tömörített állományban (i323.zip) a táblázatkezelő munkafüzet (i323.xls, i323.ods, ...), illetve egy rövid dokumentáció (i323.txt, i323.pdf, ...), amelyben szerepel a megoldáskor alkalmazott táblázatkezelő neve, verziója, valamint a megoldás rövid leírása.

Letölthető fájl: menetrend.txt

(10 pont)

A beküldési határidő 2013. június 10-én LEJÁRT.


Mintamegoldás:

Fényes Balázs 10. évfolyamos tanuló (Budapest, Szerb Antal Gimnázium) megoldása: i323.xls

Gema Barnabás 10. évfolyamos tanuló (Budapest, Berzsenyi Dániel Gimnázium) megoldása: i323.xlsx

Tegzes Tamás 10. évfolyamos tanuló (Budapest, Berzsenyi Dániel Gimnázium) megoldása: i323.xlsx és leírása:

Az adatbevitel utáni hibakeresés a J1:K5 tartományban található. Az egyes kritériumok mellett IGAZ érték jelenik meg, ha helyes volt, HAMIS, ha hibás. Megkeresi az indulási és érkezési címet a megállót a megállók között. Ha nem szerepel, hibás értéket mutat. Megvizsgálja, hogy üzemidőn belül van-e az indulási időpont és itt felhasználja a résszámításokat. Ellenőrzi, hogy különbözik-e az indulási és célállomás.

A résszámítások az M1:M6 tartományban találhatók. Nem volt feltétlenül szükséges, csak úgy gondoltam, így valamivel átláthatóbb. Megkerestem hányszor áll meg a villamos az adott megállókban. Erre a pálya csepp alakja miatt volt szükség. Megállapítottam, hogy az első, vagy a második megállásnál kell-e felszállni, leszállni. (Ha csak egyszer áll meg az adott megállóban, IGAZ értéket vesz fel.) Ha a második megállásnál kell felszállni vagy leszállni, akkor később az állomást a lista második felében keresem, így a megfelelőt fogja megtalálni. Ez alapján megállapítottam a megállók listában elfoglalt helyét is.

A megadott adatok helyességét egy ÉS függvény segítségével állapítottam meg, amely összegzi az egyes kritériumok helyességét.

A felszállás idejénél INDEX és HOL.VAN függvények, valamint a kiszámított adatok segítségével megkeresem a legnagyobb, de a szükségesnél nem nagyobb értéket, majd hozzáadok egyet, hogy a legkisebb, de a szükségesnél nagyobb értéket kapjam. Mivel ennél a függvénynél az egyenlőség is megengedett, ha éppen az indulás idejekor érkezik oda villamos, a következő villamosra száll fel. Ennek elkerülése végett elágazást vezettem be. Ha egyenlőség esete forog fenn, éppen érkezik villamos, amikor odaértünk, nem ad hozzá a HOL.VAN értékéhez egyet.

Az érkezés idejéhez meghatároztam az adott megállókhoz tartozó menetidők különbségét, majd hozzáadtam a felszállás idejéhez.

A megállók számát a megállók listában elfoglalt helyének különbségeként értelmeztem.

A menetidőt az érkezés és felszállás idejének különbségével határoztam meg.


Statisztika:

6 dolgozat érkezett.
10 pontot kapott:Fényes Balázs, Gema Barnabás, Tegzes Tamás.
8 pontot kapott:2 versenyző.
5 pontot kapott:1 versenyző.

A KöMaL 2013. májusi informatika feladatai