Факториал в 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
]]>