]]> ]]>

Факториал в F#

Пример для версий fsharp 2.0.0

Используется сопоставление по образцу с последующим рекурсивным вызовом. Ключевое слово let задаёт новое определение — в данном случае функции factorial и printFact. rec означает, что определение будет рекурсивным. Сопоставление по образцу определяется ключевым словом match. factorial вычисляет сам факториал, а printFact выводит результаты вычислений в нужном формате.

let rec factorial n =
    match n with
    | 0 -> 1
    | _ -> n * factorial (n - 1)

let rec printFact n  =
    match n with 
    | 0 -> printfn "0! = 1"
    | _ -> printFact (n-1)
           printfn "%d! = %d"  n (factorial (n))
           
printFact(16)

Комментарии

]]>

blog comments powered by Disqus

]]>

Работа программистам