Úkoly č.9
Úkol č.1
Vytvořte v jazyce Scala metodu/konstrukt until, který bude mít dva parametry -- podmínku a tělo, které se má provádět, dokud podmínka není splněna.
Příklad použití:
var a = 10;
until (a < 0) {
println(a)
a -= 1
}
Úkol č.2
Předpokládejte, že máte matice reprezentované pomocí funkcí typu: (Int, Int) => Int, vytvořte následující metody:
diag(a: Int), která vytvoří diagonální matici (ve výše uvedené reprezentaci), která bude mít na diagonále hodnotya, jinak bude obsahovat 0. Jako implicitní hodnotu pro a použijte 1.transp(m: (Int, Int) => Int), která vrátí transponovanou matici.map(f: Int => Int, m: (Int, Int) => Int), která na každou hodnotu matice aplikuje funkcif.*(k: Int, m: (Int, Int) => Int), která vynásobí každou hodnotu skáláremk. Využijte metodumap.+(m1: (Int, Int) => Int, m2: (Int, Int) => Int), která sečte dvě matice.switchRows(i: Int, j: Int, m: (Int, Int) => Int), která vrátí novou matici, kde jsou prohozeny řádkyiaj.print(i: Int, j: Int, m: (Int, Int) => Int), která vypíše prvníchiřádků ajsloupců matice.