Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Pascal] работа с повторением букв.


Автор: Janual 24.1.2008, 18:52
Каждую группу идущих подряд одинаковых букв замените буквой и числом её повторений.

Автор: Sergio02 24.1.2008, 20:59
Вроде так
Код


program pr;

var
s: string;
s1: string;
i: byte;
j: byte;
c: char;

begin
     writeln('vvedite stroky');
     readln(s);
     s1:=s[1]+'';
     j:=1;
     c:='1';
     for i:=2 to length(s) do
     begin
          if (s[i]=s1[j]) and (i<>length(s)) then
          begin
             inc(c);
          end
          else
          begin
               if c<>'1' then
               begin
                    j:=j+1;
                    s1:=s1+c;
                    c:='1';
               end;
               j:=j+1;
               s1:=s1+s[i];

          end;
     end;
writeln('rezultat');
writeln(s1);
end.


Автор: Janual 24.1.2008, 22:17
Спасибо!  smile 

Автор: Janual 25.1.2008, 22:25
Проблема выходит....сидел,пялился в программу,так и не понял,что такое.   Короче,должно быть типа того: Вводим: аааа ббб   ; Результат: а4 б3,а выходит такой результат: а а3 б б2.  smile 

Автор: kBepTu 25.1.2008, 23:23
Код

program pr;
var
s,s1: string;
i,count: byte; {count -kol-vo vhojdenii}
m:set of char;
begin
     writeln('vvedite stroky');
     readln(s);
     m=[s[1]];
     s1:='';
     count:=1;
     for i=2 to byte(s[0]) do
     if not (s[i] in m) then 
            begin
            s1:=s1+s[i-1]+IntToStr(count);
            m=[s[i]];
            count:=1;
            end
     else inc(count);
writeln('rezultat');
writeln(s1);
end.

Не компилил. Имхо со множествами красивше

Автор: Janual 26.1.2008, 13:49
[B][IntToStr/B]  Unknown identifier......  ?

Автор: orthrus 26.1.2008, 18:07
Правильно говорит, это ведь из дельфей. Замени 
Код

s1:=s1+s[i-1]+IntToStr(count);

на
Код

str(count,dig);
s1:=s1+s[i-1]+dig;

и добавь
Код

var
s,s1,dig: string;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)