Ruby的全新。有几种我无法访问的数组方法。
编辑:
我最初有:
puts 'give me a number to find phi of: '
K = gets
List = Array.new(K) #{|i| i}
List.drop(2)
List puts
记录错误:在`initialize'中:没有将String隐式转换为整数
所以我将上面第3行改为:
List = Array.new(K.to_i) #{|i| i}
现在正在接收:未定义的方法`List' for main:Object
我尝试根据用户输入创建数组,然后删除或移动数组的前2个元素(0和1)
================================= 原帖不清楚:
给我一个号码来找到phi:' K =得到 放K.shift
我确定它很容易,但无法弄明白。我错过了一个基本的库或什么?任何帮助将不胜感激!
答案 0 :(得分:0)
这是在Ruby中找到2和K之间的所有素数的最短路径,你不必发明自己的算法来找到已经存在的素数(http://ruby-doc.org/stdlib-1.9.3/libdoc/prime/rdoc/Prime.html)< / p>
require 'prime'
def find_primes_between_2_and(a_number)
Prime.each(a_number).map do |prime|
prime
end
end
puts 'Give me a number up to which to find primes:'
number = gets.to_i
puts find_primes_between_2_and(number)
答案 1 :(得分:0)
我正在通过Chris Pike的Ruby“学习编程”&amp;我正在做这个练习。但是,嘿,谢谢你的帮助。
我的转变问题是没有参数传递它。应该是List.shift(2)
非常感谢!