Počet bodov:
Popis:  15b

Ak máte akékoľvek otázky ohľadom tejto úlohy, napíšte Adamovi na

25.6. 2018, 21:37 - “Samo, mal by si už ísť spať. Zajtra ideme na návštevu!”
26.6. 2018, 15:53 - “No Samko, tak mi povedz, aký je rozdiel medzi strýkom a ujom?”
26.6. 2018, 15:54 - Ozýva sa zlovestné zavŕzganie a prudký poryv prievanu: časť druhá triešti porcelán na márne kúsky.

Samo úspešne zvláda návštevu a všetky oslovenia s ňou spojené. Na oslave sa však ocitla jeho najzlomyseľnejšia teta a začala sa ho pred celou rodinou vypytovať zlomyseľné otázky. Samko je v úzkych. Na tetinej tvári sa črtá škodoradostný úsmev, na Samovej tvári sa črtajú kropaje potu, keď tu zrazu na druhej strane domu jeho mama otvára okno a tetina zbierka starožitného porcelánu sa triešti o zem.

Samko sa tvári otrasene, no v skutočnosti rozmýšľa nad svojimi možnosťami. V tom začuje točenie diskety – to musí byť nejaký počítač! Otvára dvere, sadá za počítač a púšťa SWIPL.

Úloha

Samo má zoznam rodinných vzťahy v podobe rodič(Rodic,Dieta). Každý takýto záznam znamená, že človek Rodic je rodičom človeka Dieta. Okrem toho o každom človeku vie aj to, či je muž (zapísané muž(Meno)) alebo žena (žena(Meno)). Všetky tieto záznamy tvoria dva nezávislé rodokmene.

Oba rodokmene sú navyše korektné, teda môžete predpokladať, že každý človek má najviac dvoch rodičov a rodokmene neobsahujú žiadne cykly. Šťastnou zhodou okolností majú všetci ľudia v Samových záznamoch iné krstné mená. Nemôže sa teda napríklad stať, že by v rodokmeňoch boli dvaja rôzni Petrovia.

Skôr ako Samkova teta prestane plakať nad rozbitým porcelánom a zameria sa opäť na neho, potrebuje zistiť odpovede na nesledujúce otázky:

  1. (1 bod) Ako sa volá jeho zlomyseľná teta?

  2. (2 body) Koľko dvojíc otec-syn poznáme?

  3. (3 body) Existuje v rodokmeni niekto taký, kto nemá uja, ale má strýka? Strýko je otcov brat, ujo matkin.

  4. (4 body) Kto sú predkovia Jána?

  5. (5 body) V rodokmeni sú 2 oddelené rodiny. Koľko majú každá členov?

Ako riešiť túto úlohu

Ak ste riešili časť prvú, pravdepodobne ste už toto čítali.

Samko všetky záznamy o svojej rodine vložil do interaktívneho prostredia SWISH, kde ich môžete nájsť aj vy. Toto prostredie je dostupné online na tejto adrese: https://swish.swi-prolog.org/p/prudkyporyvprievanu.pl

Okrem toho, že v tomto prostredí sú uložené Samuelove záznamy, v tomto prostredí viete písať a spúšťať programy v jazyku Prolog. Je to jednoduchý jazyk na spracovávanie logických výrokov, pomocou ktorého viete zistiť odpovede na uvedené otázky. Krátky tutoriál k tomuto jazyku obsahujúci všetko čo potrebujete vedieť k riešeniu úlohy nájdete tu: https://král.com/prolog

Odovzdávanie

K tejto úlohe odovzdávate popis vašeho riešenia. Okrem samotnej odpovede na otázku uveďte aj Prolog programy (takzvané dotazy), ktoré ste použili pri riešení, a popis toho, prečo ste tieto programy použili a odôvodnite správnosť vašeho postupu.

Za riešenie obsahujúce iba správne odpovede získate najviac polovicu bodov.

Odovzdávanie

Na odovzdávanie sa musíš prihlásiť

Otázky a diskusia

Po skončení kola budete mať príležitosť na diskutovanie o riešeniach v diskusii pod vzorovým riešením.