Seminář 7 (Úkoly)

Úkol č. 1

Se znalostmi, které jste doposud získali, naprogramujte Matrix, třídu, která bude reprezentovat matice čísel typu double.

  • Třída bude mít jeden konstruktor Matrix (double[][] values). Kde values představuje dvourozměrné pole, které je uloženo jako pole polí. Obecně proto není garantované, že velikost pole values[i] bude stejná jako velikost pole values[j]. Pokud taková situace nastane, skončí konstruktor vyvoláním výjimky java.lang.IllegalArgumentException.
  • Třída Matrix bude mít minimálně jednu metodu Matrix add(Matrix that), která vrátí novou matici odpovídají součtu aktuální matice (this) a matice předané v argumentu (that). Pokud nebudou souhlasit rozměry matic, je vyvolána výjimka InvalidMatrixDimension.

Úkol č. 2

Napište metody, které uloží a načtou objekty třídy Matrix do/ze souboru, následujícími způsoby:

  1. jako textový formát dat, ve kterém jsou jednotlivé hodnoty odděleny mezerami a řádky znakem '\n',
  2. jako binární formát dat, ve kterém jsou uloženy nejdříve rozměry matice jako celá čísla, následně jednotlivé hodnoty,
  3. s využitím tříd ObjectInputStream a ObjectOutputStream.

Last update on 19. 9. 2025 01:14
Powered by Schemik.

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