ВУЗ:
Составители:
Рубрика:
201
end
else i:=i+1;
if f
then write('в строке есть две буквы а')
else write('в строке нет двух букв а').
Другое решение этой задачи можно получить, основываясь на втором решении
задачи 12.1.
j:=pos('a',s);
if j>0
then begin s:=copy(s,j+1,length(s)-j);
j:=pos('a',s);
if j>0
then write('в строке есть две буквы а')
else write('в строке нет двух букв а')
end
else write('в строке нет двух букв а').
Упражнения:
1. Проверьте, встречаются ли в заданной строке только две буквы а.
2. Сравните решение задачи 12.2 с решением упражнения 1.
3. Найдите i-е вхождение символа х в строку s.
Пример 12.3. В строке s заменить символы а на символы я.
Решение 1. Просматриваем строку посимвольно, удаляем найденный символ а,
вставляем на его место я.
for i:=1 to length(s) do
if copy(s,i,1)='a'
then begin delete(s,i,1)
insert('я',s,i);
end.
Решение 2. Просматриваем исходную строку посимвольно и переписываем в
выходную строку символы, отличные от а. Вместо символа а переписываем символ
я.
s1:=''; { выходная строка }
for i:=1 to length(s) do
if copy(s,i,1)='a'
then s1:=s1+'я'
else s1:=s1+copy(s,i,1).
Решение 3. Оно основывается на решении 2 задачи 12.1.
j:=pos('a',s);
while j<>0 do
begin s:=copy(s,1,j-1)+'я'+copy(s,j+1,length(s)-j);
j:=pos('a',s)
end.
Упражнение. Замените в строке s символы аа, стоящие рядом, на символ я.
Пример 12.4. Назовем словом любую последовательность букв и цифр. Строка
состоит из слов, разделенных одним или несколькими пробелами. Удалить лишние
пробелы, оставив между словами по одному пробелу.
201 end else i:=i+1; if f then write('в строке есть две буквы а') else write('в строке нет двух букв а'). Другое решение этой задачи можно получить, основываясь на втором решении задачи 12.1. j:=pos('a',s); if j>0 then begin s:=copy(s,j+1,length(s)-j); j:=pos('a',s); if j>0 then write('в строке есть две буквы а') else write('в строке нет двух букв а') end else write('в строке нет двух букв а'). Упражнения: 1. Проверьте, встречаются ли в заданной строке только две буквы а. 2. Сравните решение задачи 12.2 с решением упражнения 1. 3. Найдите i-е вхождение символа х в строку s. Пример 12.3. В строке s заменить символы а на символы я. Решение 1. Просматриваем строку посимвольно, удаляем найденный символ а, вставляем на его место я. for i:=1 to length(s) do if copy(s,i,1)='a' then begin delete(s,i,1) insert('я',s,i); end. Решение 2. Просматриваем исходную строку посимвольно и переписываем в выходную строку символы, отличные от а. Вместо символа а переписываем символ я. s1:=''; { выходная строка } for i:=1 to length(s) do if copy(s,i,1)='a' then s1:=s1+'я' else s1:=s1+copy(s,i,1). Решение 3. Оно основывается на решении 2 задачи 12.1. j:=pos('a',s); while j<>0 do begin s:=copy(s,1,j-1)+'я'+copy(s,j+1,length(s)-j); j:=pos('a',s) end. Упражнение. Замените в строке s символы аа, стоящие рядом, на символ я. Пример 12.4. Назовем словом любую последовательность букв и цифр. Строка состоит из слов, разделенных одним или несколькими пробелами. Удалить лишние пробелы, оставив между словами по одному пробелу.
Страницы
- « первая
- ‹ предыдущая
- …
- 197
- 198
- 199
- 200
- 201
- …
- следующая ›
- последняя »