Помощь - Поиск - Пользователи - Календарь
Полная версия: строки
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
brahma
1) Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелы внутри себя, будем называть словами. Подсчитать количество букв "а" в последнем слове данной строки.
2)Составить программу нормализации строки символов путем исключения из неё всех идущих подряд одинаковых символов. Вместо них вставить один символ.
Lapp
По поводу слов есть прикрепленная иема в разделе Задачи, посмотри ее: Разбиение на слова. Все способы.

И говори конкретно, что у тебя не получается. Выкладывай, что уже сделал - мы поправим и поможем доделать.
brahma
у меня ниче не получается,ниче не сделал mega_chok.gif
Michael_Rybak
ну так сделай что-нибудь smile.gif
klem4
в первой собственно разбиение на слова и не нужно ..

var
s: String;
i, count: Byte;
begin
write('s = '); readln(s);

i := Length(s);

while (s[i] = ' ') and (i > 0) do
dec(i);

count := 0;

while (i > 0) and (s[i] <> ' ') do begin
if s[i] = 'a' then
inc(count);
dec(i);
end;

writeln('count = ', count);
end.
brahma
help plz со 2-ой задачей
klem4
не ужели так лень подумать ?

i := 1;
while i < length(s) do
if s[i] = s[i + 1] then
delete(s, i, 1)
else
inc(i);
volvo
А второе задание можно немного перефразировать, тогда его будет проще решить:
Цитата
Составить программу нормализации строки символов путем исключения из неё <...> идущих подряд одинаковых символов. <...> оставить один символ.
Проход по строке от конца к началу (чтоб проще было пользоваться For-ом) и удаление символа с индексом i если s(i) = s(i - 1)...
andriano
Оставил по невнимательности - просьба удалить сообщение.
klem4
andriano , предупреждение первое и пожалуй последнее. Если не закончишь флеймить и постить не подумав предварительно, сначала будут минусы, потом бан.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.