Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ perl, можно или еще короче ?)

Автор: klem4 19.02.2008 15:58

Как говорит мой препод по никсам, это язык будущего smile.gif

Задачка собственно простейшая: ввести строку, подсчитать сколько в этой строке слов, длина которых не превышает 5. Решил попробовать сделать на Perl, интересно можно ли короче ?

#!/usr/bin/perl -w  
foreach (@words = split(/[.,;:!? ]+/, <>)) { chomp $_; $count += length($_) <= 5 ? 1 : 0; };
print "Count = $count\n";
exit;


После того что я видел, из того какие чудеса можно делать на этом языке, думаю что можно еще короче. Есть у кого мысли ?)

Автор: hiv 19.02.2008 20:16

Цитата(klem4 @ 19.02.2008 11:58) *
Как говорит мой препод по никсам, это язык будущего smile.gif
Странный препод... Вот у меня был препод по ОБЖ, так он говаривал так - "На каждый газ - свой противогаз!"
Цитата(klem4 @ 19.02.2008 11:58) *
Есть у кого мысли ?)
Конечно есть ;)
Код
#!/usr/bin/perl

print length( join('', map( length($_) <= 5 ? '1' : '' , split(/[\n\t.,;:!? ]+/, <>)) ) )
__END__


Автор: klem4 19.02.2008 20:45

классно)

Автор: klem4 24.01.2009 15:31

Извиняюсь за некрофилию)) Зашел сегодня на форум и так как сейчас в основном пишу на perl, вспомнил про этот топик, так вот придумал такое решение:

Код
print  s/\b\w{5,}\b/$&/g;


cool.gif

Автор: Altair 25.01.2009 0:39

\оффтоп\
Сторонний взгляд наблюдателя - отвратительный до тошноты язык.

Автор: klem4 25.01.2009 1:22

офф
Да не, он на самом деле волшебный)))

Автор: xds 25.01.2009 16:08

Цитата(Altair @ 25.01.2009 3:39) *

\оффтоп\
Сторонний взгляд наблюдателя - отвратительный до тошноты язык.
Для наблюдения - запросто. Для решения определенных задач - вполне ничего :-)

Автор: Altair 26.01.2009 1:46

Цитата
Для решения определенных задач - вполне ничего :-)

Это вполне возможно smile.gif

Автор: renesko1 17.02.2009 2:25

print s/\b\w{5,}\b/$&/g;
YYY.gif
Похоже на э(и)зетерический язык