Hirdetés

Új hozzászólás Aktív témák

  • bambano
    titán

    ha a \ (sortörés) jellel adunk meg inputot, akkor hogyan lehet azt elérni, hogy csak az első 2 sort nézze a script?

    Kc6, d6, Bc7, g7
    Ba4 b6 Kg8

    ''Az input egy sakkjáték állás, két sorban. (Az input többi sorával - ha van - nem kell foglalkozni.) Az első sorban a világos figurákat, a másodikban a sötéteket soroljuk fel. Egy figurát 2 vagy 3 jel ad meg. Ebből két jel a figura helye (a1-h8), egy ezeket megelőző jel a figura betűje (B/F/H/V/K, mindig nagybetű), ami elmarad, ha ''gyalog'' a figura. A felsorolást helyköz és/vagy vessző tagolja, a tagoló jelek tetszőleges sorozata is szerepelhet egyetlen elválasztó jel helyett.

    Ellenőrizni kell, hogy az input az előző pontbeli szabályoknak megfelel-e. Ha nem, azt hibaként kell kezelni. Az is hiba, ha két figurát ugyanarra a helyre kellene tenni, vagy hiányzik valamelyik király, vagy valamelyik figurából több van, mint a játék kezdetén. (Elvileg lehetne több B/H/F/V a ''gyalogátváltozás'' miatt, de ezt nem engedi meg a feladat.)''

    ezeket az ellenőrzéseket hogyan lehetne a legegyszerűbb módon elvégezni?

    előre is köszönöm a segítségeket :R
    üdv
    peterszky

    Én átkonvertálnám egy olyan filera, hogy egy bábu, egy sor, egy sorban a bábu neve, mezőszeparátor, pozíció, majd sorbarendezném első mező szerint, megszámolnám, hány bábu van, sorba rendezném második mező szerint, megszámolnám, hány olyan mező van, ami egynél többször szerepel.

    Az átalakítás kb. ennyi:
    sed -e 's/ //g' -e 's/,/\n/g' allas.txt|sed -e 's/[a-h][1-8]$/|&/'

    a többit még szöszölöm a manualból, ha még érdekes :)

Új hozzászólás Aktív témák