]]> ]]>

Mono F#

Реализация языка программирования F#

Свободная реализация 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)

Hello, World!:

Пример для версий fsharp 2.0.0
printfn "Hello, World!"

Числа Фибоначчи:

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

Используется рекурсивное определение чисел Фибоначчи “в лоб”.

let rec fibonacci n =
    match n with
    | 1 | 2 -> 1
    | _ -> fibonacci (n-1) + fibonacci (n-2)

let rec printFib n  =
    match n with 
    | 1 -> printf "%d, " (fibonacci (n))
    | _ -> printFib (n-1)
           printf "%d, " (fibonacci (n))
           
printFib(16)
printfn "..."

Комментарии

]]>

blog comments powered by Disqus

]]>

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