Hirdetés

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

  • loszerafin
    senior tag

    Jajj, bocsi, elsőéves vagy, azaz most kezdted.
    Én vmiért azt gondoltam, hogy már egy évet lehúztál.

    Ebben az esetben teljesen kezdő vagy?
    Akkor viszont ez túl mély víz. Még algoritmust se tudsz írni? Akkor minek ilyen feladat?

    De hát volt felvételi, nem? Vagy az nem programozásból volt?

    Na, szóval:
    Próbáld meg leírni magadnak, hogy oldanád meg a feladatot, ha Te volnál a számítógép.

    Több lépésben:
    1. fogalmazd meg a feladatot, saját magadnak érthetően.
    2. Próbáld megoldani a feladatot papíron, azaz tervezz magadnak különböző inputokat, és
    rajzold meg hozzá a kimenetet.
    3. Próbáld egyre ''gépiesebben'' megoldani, azaz egyre kevésbé használd az eszed a megoldáskor. Az intuíciódat teljesen kapcsold ki. Kb. egy 1,5-3 éves gyerek szintjére ''süllyedj'' le, aki mindent szó szerint vesz és csak a szájába rágott dolgokat tudja megcsinálni, azokból is max. 1-2 lépést tud egyszerre megjegyezni.
    4. Egyre jobban támaszkodj ismétlődő, egyszerű lépésekre. Ezeket az egszerű lépéseket nevezd el találóan (=rövid, de velős név)
    5. A látásodat szűkítsd le egyetlen sakk-mezőre és a szemed vezéreld a táblán parancsokkal.
    6. Játszd el, hogy sakk-robot vagy, akinek egyetlen feladata a táblára tenni a figurákat, a betáplált állásnak megfelelően.
    7. A memóriád szűkítsd le néhány rekeszre, ezekbe egyszerű dolgokat tehetsz, de ezután csak a betett dolgokra emlékezhetsz.


    Írd ide a végső megoldási lépéseidet.


    Még egy kis info:

    Van egy módszer, felülről-lefelé-nek hívják:

    0.
    Az inputnak megfelelően kiírom a bábukat tartalmazó sakktáblát.

    1.
    a,Beolvasom az inputot
    b,Kiszámolom az eredményt
    c,Kiírom az eredményt

    2.
    a1,Beolvasom a sorokat
    a2,Szétbontom a sorokat
    a3,Ellenőrzöm a részeket
    b1,Szétbontom a részeket bábú-oszlop-sor részekre
    b2,Ráteszem az elképzelt sakktáblámra a bábukat
    c, Kiírom a sakktáblámat

    De lehetne alulról-felfelé is építkezni:

    Ahhoz, hogy kiírjam egy sakktábla képét, előszőr tárolnom kell.
    Legyen , pl. egy mátrixom: TABLA[s,o] értéke legyenn a s. sor és o.adik oszlopban levő figura neve.
    Kell nekem egy Táblára parancs, ami betesz egy figurát a táblára, meg egy Kiír parancs, ami kiírja a táblát. Meg kellene egy Beolv parancs, ami beolvas egyetlen bábuállást.

    Persze kellene egy Sorbeolv, ami beolvas egy sornyi bábuállást. Ez nem állna másból, mint pár Beolv-ból.
    Akkor jó lenne egy KétsorBeolv, ami két Sorbeolv lenne.

    stb....

    És még van sok egyéb.
    Hogy melyiket választod, édesmindegy, csak az eredmény legyen jó.
    A JÓ nem csak azt jelenti, hogy működik. Fontos szempontok
    (KISS)
    a, egyszerűség
    b, részekre legyen bontva, a részek egyetlen egy dolgot csináljanak, de azt jól
    c, legyen dokumentált
    d, hibás inputra se szálljon el
    e, Kerüld el a kerék felfedezését, használj már meglévő parancsokat


    Sajnos, azt kell mondjam, a shell programozás abban némiképp eltér a hagyományos programozástól, hogy az ember itt próbálkozik. Pár meglévő parancs összekapcsolásával írják a scripteket, majd egyre bonyolítják, egy szint után pedig önálló részekre szedik.

    De ehhez bizony ismerni kell a parancsokat és a gyakori kapcsolóikat.

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