Seminář 9 (Úkoly)

Úkol č.1

Napište metodu int[][] readTextMatrix(String fileName), která načte z textového souboru matici celých čísel. Jednotlivé řádky souboru představují řádky matice, jednotlivé hodnoty v řádku jsou odděleny mezerou. Pokud dojde k chybě, metoda by měla vyvolat vyjímku.

Úkol č.2

Upravte předchozí metodu tak, aby její argument byl Reader, tj. int[][] readTextMatrix(Reader r). Vyzkoušejte, že jí lze předat objekt třídy FileReader i StringReader.

Úkol č.3

Napište metodu void writeTextMatrix(String fileName, int[][] matrix), která zapíše do textového souboru matici celých čísel. Jednotlivé řádky souboru představují řádky matice, jednotlivé hodnoty v řádku jsou odděleny mezerou. Pokud dojde k chybě, metoda by měla vyvolat vyjímku.

Úkol č.4

Upravte předchozí metodu tak, aby její argument byl Writer. Vyzkoušejte, že jí lze předat objekt třídy FileWriter i StringWriter.

Úkol č.5

Napište metodu void writeBinaryMatrix(OutputStream s, int[][] matrix), která zapíše do streamu matici celých čísel, hodnoty zapisujte v jejich binarní podobě. Zvolte si vhodný formát. Metodu napište tak, aby byla schopná pracovat s různými typy streamů.

Úkol č.6

Napište metodu int[][] readBinaryMatrix(InputStream s), která načte matici celých čísel vytvořenou předchozí metodou.

U všech úkolů ověřte, že matice zapsaná danou metodou jde opět načíst a načtená matice obsahuje stejné hodnoty! Ověřte, že ve všech maticích mohou být libovolné celočíselné hodnoty včetně nuly a hodnot záporných.

Vyřešené úkoly zašlete do 24.11.2014 17:00 CET na email petr.krajca (zavináč) upol.cz s předmětem ZP3JV. Zasílejte pouze zdrojové kódy. Pokud chcete zdrojové kódy poslat zkomprimované, použijte buď formát zip nebo kombinaci tar+gz.


Last update on 19. 11. 2014 18:01
Powered by Schemik.

© Petr Krajča, 2010, 2012
petr.krajca (at) upol.cz