Programozó versenyek

Magas szintű programozási nyelvek 1, 2016. január 5., K8 ZH

2016. január 5. 8:05 – 2016. január 5. 11:35

Ez dráma!

A drámairodalom a nyomtatásban használt kifejezőeszközeiben is eltér a hagyományos prózai megoldásoktól. Egy-egy dráma szövege nagyrészt a szereplők párbeszédeit tartalmazza. Azt, hogy mikor melyik szereplő szólal meg, onnan tudhatja az olvasó, hogy a szereplő szájából elhangzott mondatok előtt a szövegben ott olvashatja a szereplő nevét. Ráadásul mindezt egy nagyon speciális formában, ahogyan az a példa kimenetben is látható: a szereplő nevét még ugyanabban a sorban követik az első szavai, majd ha mondandója átnyúlik a következő sor(ok)ba, ott már nem jelenik meg a neve.

Írjon egy programot, amely az első parancssori argumentumaként megkapott szöveges állományból legfeljebb 100 karakter hosszúságú sorokat olvas, és azokat a drámairodalom hagyományos tördelési szabályai szerint a standard kimenetre írja!

Ha a bemenet egy sora csak nagybetűket és szóköz karaktereket tartalmaz, akkor a sorban egy szereplő neve áll. Minden más esetben valamelyik szereplő szövegét vagy annak egy részletét tartalmazza a sor.

A kimeneten a beszélő szereplő nevét nagybetűs alakjában kell megjeleníteni, a nevet a sor első pozícióján kezdve. Ettől pontosan két szóköz karakterrel elválasztva kezdődik az adott szereplő szövegének első sora. Ha a szereplő szövege több sorból áll, akkor az elsőt követő többi sort a kimenet megfelelő sorának pontosan harmadik pozíciójától kezdve kell elhelyezni.

Példa állomány (sample.txt)

  1. TEIRESZIASZ
  2. O, varosunk elokeloi, egy uton
  3. Ketten jovunk, egy szempar lat kettonk helyett,
  4. Vak ember utjat is szolgaja szabja meg.
  5. KREON
  6. Mi hir, ven Teiresziasz, mi ujsagot hozol?
  7. TEIRESZIASZ
  8. Elmondom en, csak megbecsuld a jos szavat.
  9. KREON
  10. Hat nem rad hallgattam talan a multban is?
letöltés szöveges állományként

Parancssori argumentumok

  1. sample.txt
letöltés szöveges állományként

A futtatás eredménye a standard kimeneten

  1. TEIRESZIASZ  O, varosunk elokeloi, egy uton
  2.   Ketten jovunk, egy szempar lat kettonk helyett,
  3.   Vak ember utjat is szolgaja szabja meg.
  4. KREON  Mi hir, ven Teiresziasz, mi ujsagot hozol?
  5. TEIRESZIASZ  Elmondom en, csak megbecsuld a jos szavat.
  6. KREON  Hat nem rad hallgattam talan a multban is?
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2024.09.30.