ϵ">]>
Module |
Remark
Test pozostáva zo štyroch úloh. Zadania pozri dole. POKYNY
POČET BODOV:
|
Remark
1. ÚLOHA (10 bodov) Definujte funkciu chvostovou rekurziou (tail-recursion), t. j. pomocou simulácie cyklu while alebo for (podľa vášho výberu). Musíte zadefinovať dve funkcie :
|
Remark
Poznámka k 2. úlohe. (Zadanie pozri nižšie.) Binárne konštruktory S0( ) = (nulový bit) a S1( ) = (jednotkový bit) sú zabudované. Na definovanie funkcií pomocou rekurzie na binárnej notácii používame binárnu diskrimináciu : pričom v rekurzívne volanie má tvar . |
Remark
2. ÚLOHA (10 bodov) Zadefinujte násobenie pomocou rekurzie na binárnej notácii čísel (viď poznámka vyššie). Smiete použiť iba binárnu diskrimináciu, rekurzívne volanie, binárne konštruktory , a zabudované sčítanie +. Nesmiete použiť zabudované násobenie *. |
Remark
Poznámka k 3. a 4. úlohe. (Zadania pozri nižsie.) Diadické regulárne výrazy. Regulárne výrazy sa používajú na zápis vzorov , s ktorými porovnávame reťazce. Obmedzíme sa na diadické reťazce. Regulárnymi výrazmi pre diadické reťazce sú
Matematickejšie sa na regulárne výrazy môžeme pozerať ako na množiny reťazcov:
Regulárne výrazy zakódujeme do čísel v pentadickej sústave nasledujúcimi funkciami, ktoré nazývame konštruktory . |
Remark
Poznámka k 3. úlohe. Predikát má mať nasledujúcu vlastnosť: Ak je pentadické zreťazenie kódov regulárnych výrazov , tak je pravdivé práve vtedy, keď je diadické zreťazenie nejakých , , , ( ) a platí, že diadický reťazec vyhovuje regulárnemu výrazu pre všetky . Všimnite si, že
|
Query: |
|
Results: |
|