Переделать вывод программы на строки. паскаль. как перенастроить на то, чтобы выводилось в столбик? программа выводит строку, из которой удаляется заданное слово. проблема в том, что строка выводится также горизонтально, как и задавалась пример: boat load cargo to the boat truck load cargo to the truck может мне стоит использовать другой цикл? var p, s: string; k: byte; begin readln(p); readln(s); s : = ' ' + s + ' '; // можете пояснить зачем нужны две эти строки? на практике если их убрать, то будет удаляться не все слово, а точнее будет оставаться последняя буква. может можно это как-то исправить и без этих строк? p : = ' ' + p + ' '; repeat k : = pos(p, s); if k > 0 then delete(s, k, length(p) - 1); until k = 0; writeln(s); end.

влад2317 влад2317    2   20.09.2019 18:10    0

Ответы
егор23578584 егор23578584  08.10.2020 05:09
Var
p, s: string;
k, l: byte;

begin

readln(p); 
readln(s);

s := ' ' + s + ' '; // Строка нужна для корректного удаления первого и/или последнего слова 
p := ' ' + p + ' '; // Строка нужна для удаления слова, а не последовательности символов в слове
l := length(p) - 1;
repeat
k := pos(p, s);
if k > 0 then delete(s, k, l);
until k = 0;
for var i:=1 to length(s) do
 if s[i]<>' ' then write(s[i]) else writeln;
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика