Technoplaneta – šifrovací hra pro děti

Řešení pro Úkol 3-5 – Zašmodrchaný displej

Omlouváme se, děti v elektrokroužku se teprve učí zapojovat a ještě jim to moc nejde.

Řešení

Je to zašmodrchané opravdu důkladně, ale když se podíváte na fotografii zapojení, na obou stranách uzlu můžete napočítat 7 vodičů od integrovaného obvodu k 7 svítivým segmentům displeje. Červený vodič vpravo od displeje je připojený ke společné anodě, dva vodiče vlevo od integrovaného obvodu jen přivádějí napájení. Jsou nezbytné, ale nijak neovlivňují zašmodrchání. Klíč je tedy v tom velikém uzlu vodičů a ty jsou - jak jinak - důkladně zpřeházené.

Takto vypadají symboly v zadání v pořadí, v jakém jste je mohli přečíst, nikoli tak, jak odpovídají pořadí číslic. Záměrně jsme použili všechny číslice a záměrně jsme segmenty zpřeházeli, aby symboly číslice nepřipomínaly, což nebylo úplně snadné.

Čísla by se měla zobrazovat takto.

A takto si jednotlivé segmenty displeje můžeme označit pomocí písmenek. Stejný, nebo velice podobný způsob značení, používají i výrobci displejů ve svém katalogu součástek.

Ze začátku hodně pomůže si uvědomit, kolik mají čísla i zašmodrchané symboly rozsvícených segmentů. Pouze číslo 1 svítí jen 2 segmenty, 7 třemi, 4 čtyřmi. Problém nastává u 2, 3 a 5, které svítí 5 segmenty a 6, 9, 0, které svítí 6 segmenty a proto je od sebe nelze na první pohled rozpoznat. 8 je nezměněná, zpřeházení na ní není vidět.

Z čísla jedna tedy vyplývá, že a1 → e2 nebo d2, f1 → e2 nebo d2. Segmenty zadání značím indexem 1 a segmenty čísla, které má být zobrazeno, indexem 2

a1    e2 nebo d2
b1    ?
c1    ?
d1    ?
e1    ?
f1    e2 nebo d2 
g1    ?

Pak hodně pomůže 7, z té jednoznačně vyplývá, že c1 → f2, protože to je to jediné, čím se liší od 1.

a1    e2 nebo d2
b1    ?
c1    f2
d1    ?
e1    ?
f1    e2 nebo d2 
g1    ?

Čtyřsegmentová čtyřka napoví, že d1 → g2 nebo a2 a g1 → g2 nebo a2, protože segmenty e2 a d2 jsou už obsazené jedničkou.

a1    e2 nebo d2
b1    ?
c1    f2
d1    g2 nebo a2
e1    ?
f1    e2 nebo d2 
g1    g2 nebo a2

Teď nezbývá, než se podívat na symboly svítící 5 segmenty, tj. čísla 2, 3, a 5. Víte, že jednička svítí v zadání segmenty a1 a f1, stejné segmenty, jako u čísla 1 musí svítit i u čísla 3, zatímco čísla 2 a 5 mají vždy jeden z nich zhasnutý. Tedy první z trojice symbolů v následujícím obrázku je jednoznačně číslo 3. Číslo 3 se neshoduje s číslem 4 na segmentu a2, c2 a f2, c1 → f2 můžeme vyloučit, je určeno číslem 7. Podle čísla 4 můžeme určit d1 → g2, protože a2 to být nemůže, v 3 nesvítí. A nakonec můžeme určit b1 → c2, protože nic dalšího nezbývá a c2 v čísle 3 svítit musí. Tím se vracíme k číslici 4, kde ze dvou možností pro g1 zbývá pouze a2.

a1    e2 nebo d2
b1    c2
c1    f2
d1    g2
e1    ?
f1    e2 nebo d2 
g1    a2

Vida, už je skoro vyřešeno! Tak teď je potřeba určit, co by mělo svítit místo e1 a jak to je s a1 a f1. Vezmu oba zbývající symboly ze zkoumané trojice. Vím, že to má být 2, nebo 5 a zkusím na ně použít všechno to, co už vím jistě. Měl bych brzy přijít na to, že pokud se g1 mapuje na a2, tak první z dvojice musí být nutně 5 a druhý 2. V následujícím obrázku jsem vyznačil tmavočerveně segmenty d2 a e2, které se tímto vyjasnily. Zároveň se potvrdilo, že e1 → b2. Pro ověření správnosti také vidím, že se mi žádné z písmen v cílové kombinaci segmentů neopakuje.

a1    d2
b1    c2
c1    f2
d1    g2
e1    b2
f1    e2
g1    a2

Teď jen nahradit symboly patřičnými čísly, měli jste získat toto.

A zbytek už je snadný, čísla {3, 5, 14, 20, 18, 9, 6, 21, 7, 1} jsou jen pořadím písmen v abecedě.

Řešením je heslo centrifuga.

Mimochodem, integrovaný obvod v našem zapojení, který jsme použili, je ve skutečnosti malý osmibitový počítač AT Mega 32 s 32kB Flash paměti, 2kB operační paměti schopný běžet na 20MHz a tím pádem s mnohem větším výpočetním výkonem než naše domácí počítače v letech 1980 - 1990, na kterých jsme my se učili a hráli hry.