В заданной фразе после каждой буквы «о» вставить сочетание введенное с клавиатуры. Или найдите как изменить эту программу, в ней сочетание пишется только после первой буквы, хотя если словосочетание будет из одной буквы то прог...

В заданной фразе после каждой буквы «о» вставить сочетание введенное с клавиатуры. Или найдите как изменить эту программу, в ней сочетание пишется только после первой буквы, хотя если словосочетание будет из одной буквы то программа нормально работает. program pony; vark,a,b:string; i:integer; begin write('введите строку'); readln(a); write('введите сочетание'); readln(b); k:=copy (b,1,length (b)); for i:=1 to length (a) do begin if a[i]='о' then insert(k,a,i+1); end; writeln(a); end.
Гость
Ответ(ы) на вопрос:
Гость
program pony; var   a, b: string;   i: integer; begin   Write('введите строку: '); Readln(a);   Write('введите сочетание: '); Readln(b);   for i := length(a) downto 1 do     if a[i] = 'о' then insert(b, a, i + 1);   Writeln(a) end. Тестовое решение: введите строку: Дает корова молоко введите сочетание: 12345 Дает ко12345ро12345ва мо12345ло12345ко12345
Гость
PascalABC.Net Скорее всего криво и нерационально, но работает  var  s,s2,a : string;  l,i,b,l2 : integer;  begin  readln (s);   l := Length(s);   while b <> -1 do    begin  b := 0;    b := pos ('o',s);   if b <> 0 then    begin   s2 := s2 + copy(s,1,b);   Delete (s,1,b);   writeln ('Введите строку');   readln (a);   s2 := s2+a;    end     else      begin       l2 := Length(s);        s2 := s2 + copy(s,1,l2);       b := -1;     end;     end;   writeln (s2);      end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы