Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.01.2011, 16:52   #1
Vate
Пользователь
 
Регистрация: 14.10.2010
Сообщений: 20
Вопрос Массив строк

Нуб просит помощи! Пожалуйста, напишите текст вот такой вот программулины на Паскале:
Дан массив строк. Найти все слова, содержащие наибольшее количество гласных.
Я уже моск сломал об эту хреновину.
Vate вне форума Ответить с цитированием
Старый 03.01.2011, 22:20   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а чёго тут ломать то?
поиском по форуму находите процедурку, которая из строки выделяет слова (разбор строки на слова).
Тут, кстати, неплохо бы решить - чем разделяются слова в строке - пробелами или пробелами и знаками препинания..

либо поиском, либо пишете функцию, которая считает количество гласных в переданном слове.
Кстати, тут Вам надо решить, на каком языке Вам даны слова.
для удобства рекомендую использовать константу -множество и оператор IN
например, для русских букв:
Код:
function KolicestvoGlasnyh(OneWord : string) : integer;
Const
 {русские гласные}
 glas=['А','а','Е','е','Ё','ё','И','и','О','о','У','у','ы',
          'Э','э','Ю','ю','Я','я'];
var i, Cnt : integer;
begin
  Cnt := 0;
  for i:=1 to Length(OneWord) do
    if OneWord[i] in glas then Inc(Cnt);
  KolicestvoGlasnyh := Cnt;
end;
максимальное_число равно нулю.
дальше пишете такой цикл - перебираете строки массив.
Каждую строку разбираете на слова.
Для каждого слова проверяете количество гласных.
Если оно больше максимального - запоминаете новое значение.

К сожалению, в задании стоит найти ВСЕ слова - значит, нужно или заводить переменную строкового типа, куда записывать все найденные слова, если количество гласных букв в них равно максимальному (когда находим новое слово, с бОльшим числом букв - стирать эту переменную и писать туда найденное слово),
либо можно крутить цикл ДВАЖДЫ.
первый проход - поиск максимального числа гласных.
второй проход - вывод всех тех слов, где число гласных букв равно максимальному (найденному при первом проходе)

Какой способ Вам понятнее - таким и воспользуйтесь.

p.s. начните делать - всё получится, если не будете лениться.

p.p.s. если ничего не хотите делать - тогда обращайтесь во фриланс.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.01.2011, 18:24   #3
Vate
Пользователь
 
Регистрация: 14.10.2010
Сообщений: 20
По умолчанию

Спасибо большое.
Vate вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
массив строк. zhenya.ya Общие вопросы C/C++ 2 24.09.2010 00:14
Массив строк Siluet Помощь студентам 2 30.05.2009 07:38
Массив строк С++ Nina+ Помощь студентам 1 01.04.2009 23:22