我正在创建一个程序,要求输入所需的输入数量,然后对这些输入进行气泡排序。 我的代码:方式是我的代码在获取所有输入之前显示输出?
def bubble_sort(list)
sl = list.clone
sl.each_index do |i|
(sl.length - i - 1).times do |j|
if (sl[j+1] < sl[j])
sl[j], sl[j+1] = sl[j+1], sl[j]
end
end
end
end
puts "Enter Number of Elements"
n = gets.chomp
puts "Enter #{n} elements"
n.to_i.times do
(list ||= []) << gets.chomp
bubble_sort(list)
p ('Sorted elements:')
p (list)
end
我已经测试了起泡环和它的正常工作。我遇到的问题是输出,程序要求每一行输入一个新行,但每当我输入任何输入时,它立即显示输出,并且不会等待输入其他元素。有人可以帮我解决问题,让程序保持输出,直到完成所有输入为止。
@ user3467152 - 只需使用'puts',而不是'p'。 – BroiSatse