Funciones Esenciales en Programación Funcional con Standard ML
Clasificado en Informática
Escrito el en español con un tamaño de 5,76 KB
Funciones Recursivas
(* Función factorial: calcula el factorial de un número *)
fun factorial n = if n > 0 then n * factorial (n - 1) else 1;
(* Función count: cuenta la cantidad de elementos de una lista *)
fun count (h::t) = count(t) + 1
| count([]) = 0;
(* Función sum: suma los elementos de una lista *)
fun sum(h::t) = sum(t) + h
| sum([]) = 0;
(* Función head: obtiene el primer elemento de una lista *)
fun head (nil) = raise Exepc
| head (x::l) = x;
(* Función tail: obtiene la cola de una lista *)
fun tail (nil) = raise Exepc
| tail (h::t) = t;
(* Función elt: obtiene el i-ésimo elemento de una lista *)
fun elt (h::t, i) = if i = 1 then h else elt(t, i - 1);
(* Función elt2: otra forma de obtener el i-ésimo elemento de una lista... Continuar leyendo "Funciones Esenciales en Programación Funcional con Standard ML" »