Ruby/Практикум/Строки: различия между версиями

97 байт добавлено ,  6 лет назад
/* Дана строка в которой записаны слова через пробел. Необходимо перемешать в каждом слове все символы в случайном порядке кроме первого и…
(/* Дана строка в которой записаны слова через пробел. Необходимо перемешать в каждом слове все символы в случайном порядке кроме первого и…)
Метка: possible spambot (testing)
(/* Дана строка в которой записаны слова через пробел. Необходимо перемешать в каждом слове все символы в случайном порядке кроме первого и…)
Метка: possible spambot (testing)
'''Возможное решение:'''
<source lang=ruby>
p string = '"Дана строка; в которой записаны. слова через пробел.: Необходимо перемешать в каждом слове все символы в случайном! порядке кроме? первого слова, предложения и последнего слова предложения.'"
t = string.split(/ /)
f1,f2 = t[0],t[-1]
t = t[1..-2]
t.map! do |j|
t.map! { |j| if (j.size > 2) then j.split('').shuffle.join else j end }
if (j.size > 2) then
if [".", ",", ";", ":", "!", "?"].include?(j[-1]) then
j[0..-2].split('').shuffle.join + j[-1]
else
t.map! { |j| if (j.size > 2) then j.split('').shuffle.join else j end }
end
else
j
end
end
p t = f1+" "+t.join(" ")+" "+f2
# Надо поработать со знаками препинания
</source>
'''Замечания по решению:'''
Анонимный участник