Programozó versenyek

Magas szintű programozási nyelvek 2, 2017. január 2., H16 ZH

2017. január 2. 16:00 – 2017. január 2. 17:50

Szép a fenyő télen-nyáron (C#)

Egy fenyőfát alapvetően két dolog jellemez: a fajtája és a magassága. Ezzel szemben egy karácsonyfának lehet csúcsdísze, lehet rajta elektromos lámpasor, és lehetnek rajta csillagszórók. Ugyanakkor, lássuk be, manapság egy karácsonyfa lehet műfenyő is.

A feladata egy olyan program megírása, amely a standard bemenetről fenyőfák és karácsonyfák adatait olvassa be az alábbi formában:

{K|F};fajta;magasság[;csúcsdísz_alakja;{van|nincs};csillagszórók_száma]

Ebben a felírásban a sor első karaktere jelzi, hogy fenyőfáról ('F') vagy karácsonyfáról ('K') van-e szó. A fajta egy sztring, a magasság pedig egy egész szám. Egyszerű fenyőfák esetén a sor itt véget ér, karácsonyfák esetén azonban tovább folytatódik. A karácsonyfa csúcsdíszének az alakját egy újabb sztring írja le, majd egy „van” literál jelzi, ha van a karácsonyfán elektromos lámpasor, „nincs” pedig, ha nincs. A sort egy egész szám, a karácsonyfára rögzített csillagszórók száma zárja.

A programnak ugyanakkor tetszőleges számú parancssori argumentuma is lehet, ezek a következő alakúak lehetnek:

M:magasság
CS:szám

Itt az „M” betű a fenyőfa vagy karácsonyfa magasságára utal, a „CS” pedig a csillagszórók számára. A magasság és a szám egy-egy egész számot jelöl.

A program a parancssori argumentumokkal megadott kritériumokat figyelembe véve, közöttük logikai ÉS kapcsolatot feltételezve, írja a standard kimenetre, hogy hány olyan fenyőfa vagy karácsonyfa adatait olvasta be, amelyek minden, a parancssori argumentumokban megadott feltételnek megfelelnek (pontos egyezőségeket vizsgálva)! Ha egy adott tulajdonságról nem rendelkezik parancssori argumentum, akkor abban a tekintetben bármilyen fenyőfa vagy karácsonyfa megfelel a keresési feltételeknek.

Példa bemenet

  1. F;lucfenyo;350
  2. K;vorosfenyo;150;csillag;van;18
  3. F;aranyfenyo;150
letöltés szöveges állományként

Parancssori argumentumok

  1. M:150
letöltés szöveges állományként

A futtatás eredménye a standard kimeneten

  1. 2
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.