Soubory a výjimky  9. října 2019

Materiály

Nejste účastníkem kurzu
Pro zápis do kurzu se nejprve přihlašte a následně použijte tlačítko v přehledu kurzu.

Domácí projekty

Máš-li hotové Piškvorky, můžeš si naprogramovat ještě jednu hru! Jestli na to tedy máš čas a chuť.

0.

Vytvoř hru sibenice podle následujícího popisu. Snaž se projekt rozdělit do funkcí s hezkými jmény, piš dokumentační řetězce.

  • Počítač náhodně zvolí slovo (zatím třeba ze tří možností). Pro jednoduchost používej malá písmena a nepoužívej slova, ve kterých se stejné písmeno opakuje dvakrát (třeba čokoláda).
  • Nastav výchozí stav: řetězec s tolika podtržítky, kolik je ve vybraném slově písmen.
  • Nastav počet neúspěšných pokusů na nulu.
  • Každý tah:
    • Zeptej se hráče na písmeno.
    • Pokud je to písmeno ve vybraném slově, zaměň příslušná podtržítka za ono písmeno. Bude se hodit řetězcová metoda index a funkce zamen z piškvorek.
    • Pokud dané písmeno není ve vybraném slově, započítej neúspěšný pokus.
    • Vypiš stav (slovo s případnými podtržítky).
    • Pokud už ve slově nejsou podtržítka, pogratuluj hráči a ukonči hru.
    • Podle počtu neúspěšných pokusů vypiš „obrázek”. Obrázky jsou ke stažení zde a můžeš je dát do víceřádkových řetězců (s trojitými uvozovkami).
    • Pokud jsi právě vypsala poslední obrázek, hráč prohrál. Dej mu to najevo a ukonči program.
+---.
|   |
|   O
| --|--
|  /
|
~~~~~~~

p_t__n
1.

Funguje-li ti předchozí hra, můžeš ji vylepšit.

  • Zařiď, aby fungovala slova s více stejnými písmeny.
  • Když hráč nezadá písmeno (zadá např. ABC nebo !), nepovažuj to za tah.
  • Po skončení dej hráči možnost hru opakovat.
2.

Načítej „obrázky” v Šibenici ze souborů, místo řetězců ve zdrojovém kódu.

Dnešní projekty jsou tak trochu navíc. Udělej je, pokud už máš hotové 1-D piškvorky.

3.

Napiš program, který zkopíruje soubor na jiné místo. (Zeptá se na původní jméno a nové jméno, načte původní soubor a zapíše obsah do nového.)

Program zkoušej v adresáři, který neobsahuje nic důležitého – pro Python není těžké přepsat soubor, ve kterém jsou důležité informace!

4.

Můj bratr, který píše japonské texty, mě požádal o program, který počítá znaky. Program přečte soubor rozsypanycaj.txt a zjistí, kolik znaků je psáno kterou z japonských slabikových abeced

  • ひらがな (hiragana): ぁ あ ぃ い ぅ う ぇ え ぉ お か が き ぎ く ぐ け げ こ ご さ ざ し じ す ず せ ぜ そ ぞ た だ ちぢ っ つ づ て で と ど な に ぬ ね の は ば ぱ ひ び ぴ ふ ぶ ぷ へ べ ぺ ほ ぼ ぽ ま み む め もゃ や ゅ ゆ ょ よ ら り る れ ろ ゎ わ ゐ ゑ を ん ゔ
  • カタカナ (katakana): ァ ア ィ イ ゥ ウ ェ エ ォ オ カ ガ キ ギ ク グ ケ ゲ コ ゴ サ ザ シ ジ ス ズ セ ゼ ソ ゾ タ ダ チヂ ッ ツ ヅ テ デ ト ド ナ ニ ヌ ネ ノ ハ バ パ ヒ ビ ピ フ ブ プ ヘ ベ ペ ホ ボ ポ マ ミ ム メ モャ ヤ ュ ユ ョ ヨ ラ リ ル レ ロ ヮ ワ ヰ ヱ ヲ ン ヴ ヵ ヶ ヷ ヸ ヹ ヺ

Abecedy jsou k dispozici ke stažení v souborech hiragana.txt a katakana.txt.

Program vypíše dvě čísla – počet znaků pro každou z abeced. Znaky, které nejsou v jedné z abeced, ignoruj.

Pro testování si jako rozsypanycaj.txt můžeš uložit stránku z japonské wikipedie.