Работа 3.8 Упр.24 ГДЗ Семакин 10 класс (Информатика)
Замечание. Текст может быть как на русском, так и на английском языке.
Нужно пройти по строке и исправить два момента:
- после точки должен быть пробел;
- первая буква каждого предложения должна быть заглавной.
Для этого удобно использовать вспомогательную функцию Up, которая переводит символ в верхний регистр. В программе сначала делается заглавной первая буква всей строки, затем строка просматривается справа налево. Если встречается точка, то:
- если после неё нет пробела, он вставляется;
- первая буква следующего предложения переводится в верхний регистр.
function Up(c:char):char;
begin
if c in [‘a’..’z’] then c:=UpCase(c)
else if c in [‘а’..’я’] then c:=chr(ord(c)-32)
else if c in [‘р’..’я’] then c:=chr(ord(c)-80)
else if c=’ё’ then c:=’Ё’;
Up:=c;
end;var s:string;
i,j:byte;
begin
writeln(‘Введите текст из нескольких предложений, разделенных точками:’);
readln(s);
s[1]:=Up(s[1]);
for i:=length(s) downto 1 do
if s[i]=’.’ then
begin
if s[i+1]<>’ ‘ then
begin
s[i+1]:=Up(s[i+1]);
insert(‘ ‘,s,i+1);
end
else
for j:=i+1 to length(s) do
if s[j]<>’ ‘ then
begin
s[j]:=Up(s[j]);
break;
end;
end;
write(s);
end.
Такой алгоритм обеспечивает правильное форматирование текста: после каждой точки стоит пробел, а каждое предложение начинается с прописной буквы.
Ответ
Программа приведена выше.