Показать сообщение отдельно
Старый 28.05.2011, 22:59   #7 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

А потестируйте:
Код:
program az;
var
 s1,s2:String;
 s:Array[1..255] of Char;
 i,i1,i2,j,N:Byte;
 ch:Char;
BEGIN
 writeln ('Введите строку:');
 readln(s1);
 N:=0;
 i:=0;
 i1:=0;
 i2:=0;
 Repeat
  Inc(i);
  If (i>1) and (s1[i-1]<>'-') and (s1[i]='-') then i1:=Ord(s1[i-1]);
  If (i>1) and (s1[i-1]='-') and (s1[i]<>'-') then i2:=Ord(s1[i]);
  If (i1>0) and (i2>0) then
   begin
    for j:=i1 to i2 do
     s[N+j+1-i1]:=Chr(j);
    Inc(N,(i2-i1+1));
    i1:=0;
    i2:=0;
   end;
 Until i=Length(s1);
 s2:=s;
 Writeln(s2);
 Readln;
END.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070