【问题标题】:How to calculate factorial in ruby [duplicate]如何在红宝石中计算阶乘[重复]
【发布时间】:2014-04-25 16:31:48
【问题描述】:

问题

Input:
  4 # number of input 
  1
  2
  4
  3
Output:
  1
  2
  24
  6

无法获得所需的输出

My code:
num  = Integer(gets.chomp)
k = []
for i in 1..num
k[i] = Integer(gets.chomp)
end

k.each do |w|
for i in 1..w
w.to_i = w*i
end
puts w 
end

【问题讨论】:

  • w.to_i = w*i 应该是什么意思?如何分配给to_i 调用的结果?
  • 如果你可以要求“帮我弄清楚”,而不是要求“给我代码”,至少你不会得到这么多的反对票!
  • 你需要更好地描述你的问题

标签: ruby factorial


【解决方案1】:

获取n的阶乘

(1..n).inject :*

照顾零

(1..n).inject(1, :*)

【讨论】:

    【解决方案2】:

    你可以试试:

    input = Integer(gets.chomp) 
    ans = 1
    for i in 1..input
     ans = ans*i
    end
    print(ans)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-12
      • 1970-01-01
      • 1970-01-01
      • 2012-07-05
      • 2019-09-21
      • 2011-02-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多