]]> ]]>

Факториал в Groovy

Пример для версий Groovy 1.7

Используется рекурсивное определение факториала. Для того, чтобы функция могла рекурсивно обращаться сама к себе, она должна иметь отдельное объявление перед реализацией. Если тип значения, возвращаемого функцией, не задан, по умолчанию используется целочисленный, и при вычислении 13! возникает переполнение целого.

def fact
fact = { n ->
   (n == 0 ? 1 : n * fact(n-1) )
}

(0..16).each { println "${it}! = ${fact(it)}" }

Комментарии

]]>

blog comments powered by Disqus

]]>

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