Задача 9 Урок 16

Задача 9 урок 16

Пользователь вводит исходную строку s.
Ваша программа должна вернуть другую строку, в которой все смежные (соседние) повторяющиеся символы должны быть "удалены" (т.е. повторов в новой строке быть не должно), например:
для строки:

5533g

вернуть:

53g

для строки:

b5ghh55788oooggtttttt

вернуть:

b5gh578ogt
program U16Z9;
var s,news: string;
    i,d: integer;
begin
  writeln('vvedite stroku s');
  readln(s);
  news:=s[1];
  d:=1;
  for i:=2 to length(s) do
  begin
    if (s[i]<>news[d]) then
    begin
      news:=news+s[i];
      d:=d+1;
    end;
  end;
  write(news);
  readln();
end.
vedro-compota's picture

решение засчитано

_____________
матфак вгу и остальная классика =)

program U16Z9;
var s: string;
    i: integer;
    d: char;
begin
  writeln('vvedite stroku s');
  readln(s);
  d:=s[1];
  write(d);
  for i:=2 to length(s) do
  begin
    if (s[i]<>d) then
    begin
      d:=s[i];
      write(d);
    end;
  end;
  readln();
end.