Prednáška 8 | Základy algoritmizácie a programovania (2022/2023)
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Prednáška sa venuje knižnici curses, podľa ktorej bol pôvodne vytvorený robot Karel, a jej využitiu na vylepšenie hry piškvorky (tic-tac-toe) vytvorenej v predchádzajúcich cvičeniach v jazyku C. Vysvetľuje sa nastavenie prostredia potrebné na preklad programov s touto knižnicou pridaním prepínača -lcurses do premennej CFLAGS v súbore .bashrc alebo .profile. Na demonštračnom programe curses_example sa ukazujú rôzne funkcie knižnice ako rolling text, animované menu či pohyb postavičky po obrazovke pomocou šípok. Následne sa pôvodný kód piškvoriek postupne prepisuje tak, aby namiesto opakovaného prekresľovania celej hracej plochy aktualizoval len zmenené políčko, pričom sa využívajú funkcie initscr a endwin na inicializáciu a ukončenie práce s knižnicou. Na záver je avizovaná téma argumentov príkazového riadku, ktorá umožní zadať veľkosť hracieho poľa priamo pri spustení programu.
- - Knižnica curses bola základom pre implementáciu robota Karla.
- - Preklad programu s curses vyžaduje pridanie prepínača -lcurses do CFLAGS v .bashrc/.profile.
- - Program curses_example demonštruje funkcie ako rolling text, animované menu a pohyb objektu po obrazovke.
- - Pôvodná hra piškvorky (tic-tac-toe) z cvičení sa prepisuje na efektívnejšie vykresľovanie – iba zmenené políčko namiesto celej plochy.
- - Funkcia initscr inicializuje novú obrazovku prekrývajúcu konzolu, endwin ukončuje prácu s knižnicou.
- - Algoritmus na zistenie výhry v pôvodnej hre je nedokonalý a mal byť vylepšený v rámci domácej úlohy.
- - Na záver prednášky sa plánuje ukázať spracovanie argumentov príkazového riadku na zadanie veľkosti hracieho poľa pri spustení programu.
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky