OCaml/Rekurencja i iteracje: Różnice pomiędzy wersjami
Usunięta treść Dodana treść
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 4:
rozwiązać w następujący sposób:
<
# let rec loop i =
print_endline "Looping!";
Linia 15:
Looping!
- : unit = ()
</syntaxhighlight>
Funkcje "tail-recursive" to taki przypadek rekurencyjnych funkcji, w których
Linia 33:
Rekurencji ciąg dalszy:
<
# let rec silnia n =
if n = 0 then 1 else n * silnia (n - 1);;
Linia 42:
else fib (n - 1) + fib (n - 2);;
val fib : int -> int = <fun>
</syntaxhighlight>
Pierwsza funkcja, jak każdy się pewnie domyślił, pozwala obliczyć silnię z n.
Linia 56:
<em>let ... in</em>
<
# let fib x =
(* Funkcja pomocnicza *)
Linia 85:
- : unit = ()
(* Wyrażenie w pętli "for" musi zwracać typ unit. *)
</syntaxhighlight>
<noinclude>{{nawigacja|OCaml|[[../Funkcje jako wartości/]]|[[../Listy/]]}}</noinclude>
|