Sự cố với mã Ruby 2.0 này là gì?Trả lại bất ngờ (LocalJumpError)
p (1..8).collect{|denom|
(1...denom).collect{|num|
r = Rational(num, denom)
if r > Rational(1, 3) and r < Rational(1, 2)
return 1
else
return 0
end
}
}.flatten
Lỗi này nằm trong block (2 levels) in <main>': unexpected return (LocalJumpError)
. Tôi muốn tạo một danh sách phẳng chứa n những người (và số 0 còn lại) trong đó n là số lượng số hữu tỷ với mẫu số dưới 8 là từ 1/3 đến 1/2. (it's a Project Euler problem). Vì vậy, tôi đang cố gắng trở về từ khối bên trong.
Không sử dụng 'return' trong một khối. Chỉ cần loại bỏ cả hai 'return' và mã của bạn sẽ được ok. – oldergod