====== 2048: Úloha 1 - Princip sesypání ====== [[2014_15:2048:start|Hlavní stránka]] | [[2014_15:2048:2-funkce-pro-sesypani|Další krok >]] ===== Cíl ===== Cílem této úlohy je ověřit, že sami dobře chápete, jak ve hře 2048 funguje sesypávání dlaždic k jedné z hran hrací plochy, abyste byli schopni správně vyřešit další úkol, v němž budete muset tento postup naprogramovat. ^ Prerekvizity | Žádné | ^ Náročnost přemýšlení | Mírná | ^ Náročnost programování | Žádná | ===== Příprava ===== Zkuste si zahrát dostatek partií hry na adrese [[http://2048game.com]]. Soustřeďte se na to, abyste pochopili * pravidla řídící sesypávání dlaždic a jejich spojování do dlaždic s vyšším číslem a * pravidla pro počítání skóre (tj. pro přičítání bodů za jednotlivé tahy ke skóre). Asi sami brzy přijdete na to, že při sesypávání dlaždic doleva nebo doprava jsou jednotlivé řádky dlaždic na sobě nezávislé, zatímco při sesypávání nahoru či dolů jsou nezávislé sloupečky, přičemž pravidla pro řádky i sloupce jsou vždy stejná. Při testování se proto soustředíme vždy pouze na 1 řádek a budeme předpokládat, že jej chceme sesypat k levému okraji. ===== Zadání ===== - Stáhněte si {{:2014_15:2048:1dhrebckgquisebn.zip|zip archiv}}((Omlouváme se za kryptické názvy archivů. Snažíme se tím zajistit, aby název archivu nebylo snadné jen tak uhodnout. Úspěšní řešitelé jedné podúlohy dostanou jako odměnu odkaz na archiv s podpůrnými kódy pro další podúlohu.)), v němž najdete soubor ''rows_empty.txt'' s testovacími konfiguracemi řádků. - Vytvořte kopii tohoto souboru s názvem ''rows_complete.txt''. - Do tohoto souboru doplňte, jak podle vás bude vypadat výsledná konfigurace řádku poté, co hráč vydá povel k sesypání doleva. - Doplněný textový soubor ''rows_complete.txt'' odešlete do [[https://hapky.fel.cvut.cz/sou/assignments.php|odevzdávacího systému]]. ===== Příklad ===== Řádek v souboru vypadá takto (číslo 0 označuje prázdné políčko): 0 2 0 2 : : Řekněme, že si (nesprávně) myslím, že po sesypání doleva bude tento řádek vypadat 2, 2, 0, 0, a že přírustek skóre za toto sesypání bude 3. Doplním proto řádek následujícím způsobem: 0 2 0 2 : 2 2 0 0 : 3 Poté, co tímto způsobem doplním všechny řádky, odešlu řešení do odevzdávacího systému ke kontrole. **Poznámka:** V textovém souboru jsou povinné konfigurace řádků, které musíte "vyřešit", aby úloha byla považována za splněnou. Nic vám ale nebrání do souboru přidat vlastní výchozí a výsledné konfigurace řádků a nechat si je systémem zkontrolovat.