我是通過Proj Euler和Ruby編程和工作的全新品牌。爲什麼不會這個紅寶石循環休息?如果爲什麼這個紅寶石每個循環都不會中斷?
(1..5).each do |a|
(1..5).each do |b|
e=(a*a)+(b*b)
c=Math.sqrt(e)
puts "a=#{a}, b=#{b}, c=#{c}"
break if a+b+c == 12
end
end
注意我把別的if語句(話說就是,將 「發現」 當A + B + C == 12),它工作得很好,它只是不會打破
它位於內部範圍循環中並打破該外部循環,但外部循環將繼續。 – squiguy 2013-04-10 07:05:04
可能重複[如何在Ruby中打破外部循環?](http://stackoverflow.com/questions/1352120/how-to-break-outer-cycle-in-ruby) – pduersteler 2013-04-10 07:05:55
你的問題很混亂。你爲什麼要在終端上運行你的代碼?相反,您可以在這裏輸出結果,並從輸出中詢問您發現的意外行爲,以及預期的輸出結果。 – 2013-04-10 07:09:09