Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Рядки.doc
Скачиваний:
0
Добавлен:
12.09.2019
Размер:
79.87 Кб
Скачать

Дано рядок. Необхідно знайти загальну кількість російських символів.

Можливий розв’язок:

str = "ывfgфеф"

p( str.split("").select{ |n| ( n>="а" || n>="А" )&&( n<= "я" || n<="Я" ) }.size )

Замечания по решению: Нижеследующее проще.

Можливий розв’язок:

str = "ывfgфеф"

p str.scan(/[А-я]/).size

Можливий розв’язок:

str = "ывЛgфmю"

p str.count "А-я"

Дано рядок, який складається з символів латиниці. Необхідно перевірити впорядкування рядка по зростанню.

Можливий розв’язок:

str = "lol"

a = str.split("")

b = a.select{ |i| ("a".."z").include?(i) }

p( b == b.sort )

Можливий розв’язок:

cTpoka = "acBdeFg"

bb = ("A".."Z").to_a

sbb = cTpoka.split("") - bb

p( sbb == sbb.sort )

Можливий розв’язок:

str = "acBdeFg"

a=str.scan(/[a-z]/)

p a==a.sort

Можливий розв’язок:

str = "acBdeFg"

a=str.scan(/\w/)

p a==a.sort

Можливий розв’язок:

a = "dfbxvsferwr"

a.split(//) == a.split(//).sort

Можливий розв’язок:

st = 'abCDefDHijklmo Mp'

res = true

st.scan(/[a-z]/).each_index{|i| i == 0 ? next : (res = false and exit if st[i] < st[i-1])}

res

Дана рядок в якому слова записані через пробіл. Необхідно перемішати всі слова цього рядка у випадковому порядку.

Можливий розв’язок:

str="Point Line Triangle Square Pentagon"

puts str.split(" ").sort_by{ rand }.join(" ")

Можливий розв’язок:

str="Point Line Triangle Square Pentagon"

puts str.split.shuffle.join(' ')

Можливий розв’язок:

str="Point Line Triangle Square Pentagon"

puts str.split.shuffle*' '