Функция факториала Ruby

Я схожу с ума: Где функция Ruby для факториала? Нет, мне не нужны учебные реализации, я просто хочу функцию от библиотеки. Это не находится в Математике!

Я начинаю сомневаться, действительно ли это - стандартная библиотечная функция?

85
задан Yu Hao 20 May 2016 в 17:50
поделиться

2 ответа

В стандартной библиотеке нет функции факториала.

133
ответ дан 24 November 2019 в 08:07
поделиться

Его нет в стандартной библиотеке, но вы можете расширить класс Integer.

class Integer
  def factorial_recursive
    self <= 1 ? 1 : self * (self - 1).factorial
  end
  def factorial_iterative
    f = 1; for i in 1..self; f *= i; end; f
  end
  alias :factorial :factorial_iterative
end

Примечание. Итерационный факториал - лучший выбор по очевидным причинам производительности.

77
ответ дан 24 November 2019 в 08:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: