ZAP - Cvičenie č. 4 | Lab 4 (2019/2020)
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
Cvičenie sa venuje pokračovaniu práce s robotom Karlom, konkrétne úlohe Collector, kde má robot systematicky prejsť celým svetom (nie špirálovito, ale po riadkoch) a pozbierať všetky značky. Postupne sa vytvárajú vlastné funkcie collect_line, collect_beepers, go_up a turn_right, pričom sa rieši správne ošetrenie okrajových prípadov – zastavenie pred stenou pomocou return, prechod aj v nepárnom svete a poradie príkazov (najskôr zbieranie značiek, potom krok vpred), aby sa nevynechali značky na začiatku ani na konci riadku. Doplnená je aj funkcia find_south_west na presun do ľavého dolného rohu pre mapy, kde robot nezačína v rohu. Na záver sa naznačuje prechod na podobnú úlohu Multiplier, kde sa vychádza z riešenia Collectora, no namiesto zbierania sa značky na danej pozícii zdvojnásobujú.
- - Posledné cvičenie s robotom Karlom (Setup: priečinok Lab04, kopírovanie Makefile z Lab03)
- - Úloha Collector: systematický prechod svetom po riadkoch namiesto špirály
- - Vytvorenie vlastných funkcií: collect_line, collect_beepers, go_up, turn_right
- - Ošetrenie konca sveta pomocou if (front_is_blocked) return, aby robot nenaboril do steny
- - Riešenie funguje aj pre nepárny počet riadkov na rozdiel od 'natvrdo' napísaných riešení
- - Doplnenie funkcie find_south_west pre presun do ľavého dolného rohu pri iných mapách
- - Oprava poradia príkazov v collect_line (najprv zbieranie, potom krok) a pridanie collect_beepers na konci riadku
- - Prechod na podobnú úlohu Multiplier – zdvojnásobovanie značiek namiesto ich zbierania
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky