0
我正在做一個ruby問題,想要一個方法來查找除自身以外的所有數字的除數,輸出是一個有序數組。如果數字是素數,請列出它是素數。紅寶石 - 是否有遞歸解決方案來查找數字的除數?
我目前正試圖教自己遞歸。簡單的遞歸問題,如找到一個數的階乘是非常基本的理解,但我想知道這個問題是否可以遞歸地完成。它似乎符合一個可能但我無法弄清楚的標準。
例子n = 15,除了它本身的除數是[3,5]。
我的代碼解決了這個問題。
require 'prime'
def divisors(n)
return "#{n} is prime" if Prime.prime?(n)
x = n/2
arr = []
until x == 1
arr << x if n % x == 0
x -= 1
end
arr.sort
end
任何幫助做這個遞歸將是巨大的,或只是讓我知道這是不是可以做這樣會有幫助過的一個問題。
我想你錯過了在你指定的列表中指定變量'n'。 **初始調用'(x || = n/2)'**。 –
N作爲參數傳遞給函數 –
您錯過了代碼解釋中的n,而不是代碼中。 –