Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > Задача на отбор слов из массива


Автор: yraloz 13.4.2006, 09:03
Всем здравствуйте, если сможете, помогите решить задачу. У меня есть массив типа string. В каждой его ячейки находится одно слово, состоящее либо только из букв, либо только из цифр, либо и из цифр и из букв. И нужно вывести на экран эти слова, упорядоченные по группам : 1.Состоящие из одних букв. 2.Из одних цифр. 3. И из букв и из цифр. Заранее спасибо.

Автор: DimassS 12.5.2006, 04:18
Цитата

И нужно вывести на экран эти слова, упорядоченные по группам :


На какой проге тебе это сделать???   

Автор: nostromo 12.5.2006, 09:07
И все же удивительно, насколько просто и естественно решаются подобные задачи на некоторых языках программирования.

Smalltalk:
Код

isOnlyLetters := [:word | (word select: [:a| a isLetter not]) isEmpty].
isOnlyDigits := [:word | (word select: [:a| a isDigit not]) isEmpty].

array := #('sdf' '45' 'df9tg0965' 'g0945' 'gg' '885j' 'gFF' '32').

array select: [:w | isOnlyLetters value: w].
Результат:  #('sdf' 'gg' 'gFF')

array select: [:w | isOnlyDigits value: w].
Результат:  #('45' '32')

array reject: [:w | (isOnlyLetters value: w) | (isOnlyDigits value: w)]
Результат:  #('df9tg0965' 'g0945' '885j')
 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)