2011-05-28

Python pagrindai per 15 min.

    Išmokti Python programavimo kalbą ir jos svarbiausias konstrukcijas - galima labai greitai. Kalba gan paprasta, patraukli savo lankstumu, įgudę programuojai perpras be vargo, o pradedančiajam - gera alternatyva arba papildas programuoti šalia kokio Pascal ;) Šiame įrašė pateiksiu greitą pradžiamokslį šiai kalbai.

    Taigi parsisiunčiam ir įsirašom Python iš http://www.python.org/download/ (siulyčiau kol kas 2.7.x versiją, nes ji geriausiai dabar palaikoma ir pereiti prie 3.x nebus didelių problemų, jei ryžtumetės vėliau). Tad nieko nelaukdami - važiuojam!

2011-05-10

Labirintų generavimas

                Vienas gan įdomus uždavinys yra labirintų sprendimas – pradedant įėjimu pasiekti labirinto pabaigą. Kompiuteriai tai atlieka itin greitai, žmogui tektų kaip reikiant paprakaituoti, jei duotume sudėtingesnį atvejį. Labirintų sprendimui naudojamas paieškos į gylį metodas – breadth first search arba tiesiog BFS. Jei teko bent kiek domėtis, tai šis metodas veikia labai paprastai ir primena Flood fill metodą (tą patį kurį naudoja Photoshop, MS Paint, Gimp etc.) figūrų užpildymui tik šiek tiek modifikuotą. 
                Kitas uždavinys – labirintus ne spręsti, bet juos generuoti! Taip! Pasirodo, kad generuoti labirintą nėra taip paprasta, kaip gali pasirodyti. Šiame straipsniuke pabandysiu apžvelgti pamąstymus, kaip tai būtų galima atlikti ir galiausiai užbaigsime su realizacija. Jokiu būdu nesistengsiu sugalvoti kažko optimalaus ir minimalaus, o tiesiog parodyti, kad generavimo idėja irgi gali būti įdomi ir įtraukianti.