Haskell Hero

Interaktivní učebnice pro začínající Haskellisty

Pár funkcí do začátku

Úvod

V této kapitole zmíníme pár základních funkcí pouze se slovním popisem a příkladem použití.

Šipka ~> znamená, že se výraz nalevo vyhodnotí na výraz napravo. Zápis

3 + 5 ~> 8
zjednodušeně znamená, že když Hugsu zadáme k vypočtení 3 + 5, tak nám jako výsledek vypíše 8. Více v kapitole Vyhodnocování.

Matematické operátory

Nejjednodušší výrazy, které můžeme v Haskellu zapisovat, jsou výrazy s matematickými operátory.

Patří sem sčítání, odčítání, násobení a dělení.

3 + 5 ~> 8
5 - 3 ~> 2
4 * 8 ~> 32
9 / 2 ~> 4.5
9 / 3 ~> 3.0
Pozn: Operátor / provádí desetinné dělení i nad celými čísly. Pro celočíselné dělení je zde funkce div.

odd

Unární funkce odd si bere jedno číslo, o kterém rozhodne, zda je liché.

Výraz odd x se vyhodnotí na True, pokud je x liché, a na False, pokud je x sudé.

Příklady:

odd 5 ~> True
odd 8 ~> False

even

Funkce even si bere jedno číslo, o kterém rozhodne, zda je sudé.

Výraz even x se vyhodnotí na True, pokud je x sudé, a na False, pokud je x liché.

Příklady:

even 6 ~> True
even 1 ~> False

div

div je funkce počítající celočíselné dělení. Výraz div x y se vyhodnotí na celočíselný podíl x děleno y.

Příklady:

div 8  3 ~> 2
div 2  5 ~> 0
div 20 3 ~> 6

mod

mod je funkce, která počítá zbytek po celočíselném dělení.

Výraz mod x y se vyhodnotí na zbytek, který vznikne podělením čísla x číslem y.

Příklady:

mod 9  2 ~> 1
mod 10 5 ~> 0
mod 20 6 ~> 2