PascalABC. Вставить после каждого слова исходной строки, заканчивающегося на букву «о», слово «Ого». Уже видел решение этой задачи, но там программа выполнялась только когда после символа "о" стоял пробел. Т.е. когда слово с "о" на конце было последним и нужно было нажать enter для окончания ввода, программа не выполнялась, требовался пробел. Если хотите что-либо уточнить, задайте вопрос, но только по делу
Ответы на вопрос
Ответил 140201
0
program ogo;
var t,s: string; n,m,i: integer;
begin
writeln ('Введите строку:');
readln (t);
n:=length(t); //длина исходной строки
s:=' ого'; //вставляемый фрагмент
m:=length(s); //длина вставки
i:=2;
while i<=n do //через while, т.к. нужно изменять счетчик вручную
begin
if (((t[i-1]='О') or (t[i-1]='о')) and (ord(t[i])<160))
then begin
insert(s,t,i); //вставка ого;
n:=length(t); //новая длина строки
i:=i+1+m; //перескакиваем через вставку
end
else
if (((t[i]='О') or (t[i]='о')) and (i=n)) //проверку последнего символа пришлось вынести отдельно
then begin
insert(s,t,i+1);//вставка ого;
n:=length(t); //новая длина строки
i:=i+1+m;
end
else i:=i+1;
end;
writeln (t)
end.
______________________
Пример:
Введите строку:
О, как прекрасно это море! Как красиво это небо
О ого, как прекрасно ого это ого море! Как красиво ого это ого небо ого
var t,s: string; n,m,i: integer;
begin
writeln ('Введите строку:');
readln (t);
n:=length(t); //длина исходной строки
s:=' ого'; //вставляемый фрагмент
m:=length(s); //длина вставки
i:=2;
while i<=n do //через while, т.к. нужно изменять счетчик вручную
begin
if (((t[i-1]='О') or (t[i-1]='о')) and (ord(t[i])<160))
then begin
insert(s,t,i); //вставка ого;
n:=length(t); //новая длина строки
i:=i+1+m; //перескакиваем через вставку
end
else
if (((t[i]='О') or (t[i]='о')) and (i=n)) //проверку последнего символа пришлось вынести отдельно
then begin
insert(s,t,i+1);//вставка ого;
n:=length(t); //новая длина строки
i:=i+1+m;
end
else i:=i+1;
end;
writeln (t)
end.
______________________
Пример:
Введите строку:
О, как прекрасно это море! Как красиво это небо
О ого, как прекрасно ого это ого море! Как красиво ого это ого небо ого
Ответил 140201
0
Ну как? Почиталось?
Ответил youngG0d
0
Да, спасибо большое)
Новые вопросы
Математика,
2 года назад
Химия,
2 года назад
Математика,
8 лет назад
Биология,
8 лет назад
Математика,
9 лет назад
История,
9 лет назад