====== Implementační test 23.01.2024 ====== Napište program, který bude implementovat populární hru [[https://www.nytimes.com/games/wordle/index.html|WORDLE]] (v české verzi [[https://hadejslova.cz/|Hádej slova]]. Program funguje tak, že ze souboru načte z textového souboru předem neznámá {{ :courses:b0b99prpa:slova.txt |slova}} (řazena v textovém souboru libovolným způsobem), a z tohoto souboru náhodně vybere jedno slovo, které bude hráč v šesti pokusech hádat. Slova jsou složena z pěti písmen, pokud mají slova jinou délku, nejsou do výběru zařazena. V každém ze šesti tahů napíše hráč svůj tip a program označí písmena, která hráč * uhodl na přesné pozici -- ''+'' * uhodl jejich přítomnost ve slově -- ''?'' * neuhodl -- ''x'' Volitelně na druhý řádek ještě uveďte kolik písmen se v daném slově nachází, pokud je počet různý od 1 {{ :courses:b0b99prpa:slova.txt |slova.txt}} ===== Příklady hry ===== Příklad 1: hádáné slovo je ''kecup'': > kebab = ++xxx > kecka = +++xx > kecup = +++++ OK, 3 tahy Priklad 2: hádané slovo je ''parek'': > rampa = ?+xxx > karma = ?++xx > marka = x++?x ... FAIL Priklad 3: hádané slovo je ''kebab'': > babka = ??+x? = 2 2 > karma = x?xx? > kecup = ++xxx > kebab = +++++ OK, 4 tahy ===== Implementace ===== Volání programu: $ ./wordle slova.txt Generování náhodných čísel #include #include srand(time(NULL)); // Initialization, should only be called once int r = rand(); // Returns a pseudo-random integer between 0 and RAND_MAX Kontrola vstupu hráče: pokud hráč zadá slovo jiné délky než 5, není akceptováno, ale hráč neztrácí tah.