首页 > 代码库 > 求阶乘及阶乘和

求阶乘及阶乘和

 

 

 1 #求阶乘方法一 2 def f1(n) 3   if n == 1 4     return 1  5   else 6     return n * f1(n-1) 7   end 8 end 9 10 #求阶乘方法二11 def f2(n)12   i = 113   while n > 014     i *= n15     n -= 116   end17   return i18 end19  20 #求1到n的阶乘之和方法一21 sum = 022 (1..43).each do | x |23   sum = sum + f2(x)      24 end25 puts sum26 27 #求1到n的阶乘之和方法二28 def f3(n)29   sum = 030   n.downto(1) do31     while n > 032       i = 133       i *= n34       n -= 135       sum *= i36       sum += i37     end38   end    39   return sum40 end41 puts f3(43)42 43  

 

求阶乘及阶乘和