5.9 Domácí úkol

Upravte soubor hw04.R. Vytvořte v něm funkci xMax(v, n), která vrátí \(n\)-tý největší prvek vektoru v. Vektor v musí být zadán vždy. Pokud je n zadáno, vrátí n-tý největší prvek; pokud n není zadáno, vrátí druhý největší prvek.

Funkce skončí chybou, pokud

  • n je zadáno, ale není to jedno celé číslo (pozor: nemusí být třída integer!, chyba "n isn't one round number!"),
  • n je menší než jedna nebovětší než délka vektoru v (chyba "n is out of bounds!")
  • v není numerický atomický vektor (chyba "v is not numeric atomic vector!")
  • nejsou hodnoty vektoru v unikátní, tj. některá hodnota se ve vektoru vyskytuje vícekrát (chyba "v doesn't have unique values!"); hint: funkce unique()

Při ukončení chybou musí funkce vypsat předepsanou chybovou hlášku.