организовать вывод в другой строке - PullRequest
0 голосов
/ 12 октября 2011

нужна лишь небольшая польская работа ..

command = ""
names = []
while command != "exit"
puts 'please enter names seperated by a space: '

 command = gets.chomp!

 if command == "quit"
   names.sort! do|a,b| a.upcase <=> b.upcase end         # use {...} for do\end, in a single entry rather then multiple
    names.each_with_index do |name, index|
   if index % 2 == 0
       puts "#{name}", "\n"
      else
      puts "#{name.reverse}", "\n"
  end
 end
  else
    names << command
  end
end

, поэтому эта программа отображает количество имен, введенных пользователем.то, что я не могу заставить это сделать, это отображать имена друг под другом.например.грабить Билла Люси Чопа ... теперь он отображает каждую вторую фамилию в обратном направлении и отображает их следующим образом

rob

Билл

Люси

Чоп

======

llib

pohc.

Лолди мозг готовит любые предложения ??

1 Ответ

0 голосов
/ 13 октября 2011

Вот как бы я это сделал:

names = []
while true
  puts 'please enter names seperated by a space: '
  command = gets.chomp
  break if command == 'exit' #exit loop if exit is entered
  command.split(' ').each {|a| names.push(a)} # split up each word with space as delimiter and insert into the array
end


temp = []
names.each do |each| #cycle thru array
  puts each # print each entry
  temp.push(each) if names.index(each).odd? #if entry is odd then add to temp array
end
puts '======'
temp.each {|each| puts each.reverse} #print each entry reversed

Я могу попытаться исправить твое, если хочешь ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...