如何编写一个程序,根据输入的名称将人员分组,以及应创建多少组?



所以我必须创建一个程序,将人们分组。它必须:

  • 询问用户要创建多少个组
  • 询问人们的名字,一次一个,直到用户输入"停止",例如有三组,输入5个名字,第一个人进入第一组,第二个人进入第二组,第三人进入第三组,第四人进入第一组,第五个人进入第二组。向用户询问组的编号。打印该组中的人员,每个人员用逗号和空格分隔。组号是"1 索引"的,因此如果用户输入 1,则应打印第一组,而不是第二组。
  • 继续要求用户输入组号,直到用户输入"停止">

这就是我目前所拥有的,但老实说,我不知道从这里走向何方,甚至这是否正确。我知道某处应该有一个模,但不知道如何措辞(我是初学者!

puts "Enter the number of groups you would like to create"
group_number = gets.chomp.to_i
array = Array.new(group_number) { [] }
puts "Give me a name"
while input_name = gets.chomp
if input == "stop"
break
else puts "Give me a name"
array << input_name
end
end

首先,请尝试调试您的代码并在逻辑部分进行练习。

试试这个,它将打印所有有成员的组。我从键盘输入从"q"到"l"作为成员名称QWERTY

puts "Enter the number of groups you would like to create"
group_number = gets.chomp.to_i
array = Array.new(group_number) { [] }
puts "Give me a name"
count = 0
while input_name = gets.chomp
if input_name == "stop"
break
else puts "Give me a name"     
array[count] << input_name
count += 1
count = 0 if count == group_number
end
end
puts array.inspect
#[["q", "y", "a", "h"], ["w", "u", "s", "j"], ["e", "i", "d", "k"], ["r", "o", "f", "l"], ["t", "p", "g"]]

上面的评论是输出,然后您可以询问要打印哪些组成员

相关内容

  • 没有找到相关文章

最新更新