1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| Sqrin |
Сообщение
#1
|
|
Гость |
Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных латинских букв; между соседними словами – запятая или не менее одного пробела, за последним словом - точка.
Напечатать те слова последовательности, которые отличны от последнего слова и удовлетворяют следующему свойству: - в слове гласные чередуются с согласными; Напечатать те слова последовательности, которые отличны от последнего слова, предварительно преобразовав каждое из них по следующему правилу: - если слово нечетной длины, то удалить его среднюю букву. напишите плиз |
![]() ![]() |
| Archon |
Сообщение
#2
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 618 Пол: Мужской Репутация: 24 |
1. не 50 символов в строке, а 50 слов. Поставь просто string.
2. создай wrds : array [1..50] of string[8]; 3. загоняй слова в массив. Перебирай все символы(при этом wrds[j]:=wrds[j]+Stroka[i], i - счётчик цикла, j - счётчик слов), если символ не в множестве гласных и не в множестве согласных, значит разделитель(j++ :D ). добавлено: Начало должно выглядеть так Код Uses crt; Const Glas = ['A','E','I','O','U','Y']; Sogl = ['A'..'Z'] - Glas; Var S : string; words : array [1..50] of string[8]; I,j : integer; old : char; Begin ClrScr; Write('Введите строку : '); Readln(S); old := ' '; {Тута пробел} j := 1; {Первое слово} For i := 1 to length(S) do {Сканируем строку} Begin if UpCase(S[i]) in Sogl + Glas then words[j] := words[j] + S[i]{если буква, добавляем к текущему слову} else if UpCase(old) in Sogl + Glas then Inc(j);{Если не буква, а предыдущий символ - буква, увеличиваем номер слова} old := S[i]; {Сохраняем символ, на следующем шаге он станет предыдущим} End; Сообщение отредактировано: Archon - -------------------- Close the World...txeN eht nepO
|
Sqrin множества 11.05.2005 4:05
volvo
Помочь - пожалуйста, но писАть полностью :no:
Х… 11.05.2005 4:18
asCOOLs ето понятно ... вот тока определение согласные или… 17.05.2005 4:28
volvo const
glas = ['a', 'e', 'i… 17.05.2005 4:33
Sqrin как задатьмножество я понимаю
а вот....
Напечатать… 15.06.2005 13:19
volvo
Ну, для этого допустим надо разбивать строку на с… 15.06.2005 13:27
Sqrin о елки .. оболдеть... что то я запутолся...
ксат… 15.06.2005 13:39
Malice Если я все правильно понял, то 50 слов * (8 символ… 16.06.2005 18:03
klem4
что значит ? программа, описаная выше, видишь ? … 16.06.2005 18:07
Malice
Массив заполняется при вводе ? Нет. Там readln (… 16.06.2005 18:11
Archon :D :D :D :D :D :D :D
Можно
S : string;
зам… 16.06.2005 18:23
Malice
Зря ты так. Может в этом и суть :) Описано уж бо… 16.06.2005 18:38
volvo
Что именно КОНКРЕТНО описано? Я например виже тол… 16.06.2005 18:55
Guest
Нежнее, volvo, нежнее. Работа программиста приуч… 17.06.2005 2:57
klem4 Можно вводить сразу массив слов :
uses crt;
cons… 16.06.2005 18:55
Archon Да ну вас... Мы же с Malice пошутили... :p2:
У на… 16.06.2005 18:59
klem4 Не уверен что отрабатывает полностью правильно, та… 16.06.2005 20:35
volvo
Вот этот кусок вызывает сомнения:
clrscr;
… 17.06.2005 16:08
klem4 А если так :
write('n='); readln(n);
… 17.06.2005 17:05
volvo klem4, а как тебе вот такой способ решения первого… 17.06.2005 17:58
klem4
...красиво :D 17.06.2005 18:03
Malice
Раз такая пьянка пошла, чередование так проще пр… 17.06.2005 20:09
Archon volvo, я твою функцию get_words чуток подправил и … 17.06.2005 18:36
Archon volvo, оценил проверку на чередование.
Не знал, чт… 17.06.2005 20:00![]() ![]() |
|
Текстовая версия | 22.12.2025 18:58 |