MST

星途 面试题库

面试题:Ruby逻辑控制高级难度题

给定一个数组`arr = [1, 5, 9, 12, 15]`,编写Ruby代码,使用逻辑控制语句,筛选出数组中所有能同时被3和5整除的数字,并将这些数字组成一个新的数组。同时,要求代码使用`each`迭代器和逻辑判断结合的方式实现,解释为何不直接使用`select`方法。
23.8万 热度难度
编程语言Ruby

知识考点

AI 面试

面试题答案

一键面试
arr = [1, 5, 9, 12, 15]
result = []
arr.each do |num|
  if num % 3 == 0 && num % 5 == 0
    result << num
  end
end
puts result

不直接使用select方法的原因是,本题要求使用each迭代器和逻辑判断结合的方式实现。select方法虽然能更简洁地达到筛选数组元素的目的,它内部也是迭代遍历数组,但题目明确指定了使用each迭代器来进行元素的遍历与判断,以考察对each迭代器以及逻辑控制语句的使用能力。