Študijné materiály

Ďalším krokom bude ukážka použitia funkcií. Tie plnia rovnakú úlohu ako funkcie v procedurálnych jazykoch. Funkcia prijíma niekoľko argumentov a vracia výsledok. Žiaľ môže mať aj side efekty. Poďme sa ale pozrieť na definíciu základnej funkcie.

fun compute(a: Int, b: Int): Int {
    return a * b
}

fun main() {
    val result = compute(10, 4)
    println(result)     // 40
}

Funkciu teda definujeme nasledovne:

  1. fun
  2. názov funkcie
  3. v zátvorkách argumenty funkcie oddelené čiarkou
  4. dvojbodka
  5. návratový typ funkcie a
  6. telo funkcie

Poznámky:

  • Argumenty funkcie sú vždy val preto slovíčko val písať nemusíme.
  • Funkcia bez návratového typu vracia typ Unit (napr.: fun x() : Unit {})
  • Návratový typ Unit nie je nutné vo funkcii zadávať (napr.: fun x() {})
  • Hodnotu z funkcie vrátime slovíčkom return a hodnotou, ktorú chceme vrátiť

Úlohy

Úloha 1

Napíš funkciu sucet, ktorá prijme dve celé čísla a pomocou return vráti ich súčet.

Úloha 2

Napíš funkciu jeParne, ktorá prijme číslo a vráti hodnotu Boolean podľa jeho parity.

Úloha 3

Vytvor funkciu vypisPozdrav, ktorá prijme meno, nič nevracia a vypíše pozdrav.