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

Например, так:
Код:
Const
 N=11;
 A:Array[1..N] of Integer=(1, 3, 4, 6, 2, 4, 6, 8, 1, 3, 5);

Var
 i:Integer;
 flag,flag1:boolean;

Begin
 for i:=1 to N do write(A[i],' ');
 writeln;
 i:=0;
 flag1:=false;
 flag:=true;
 Repeat
  Inc(i);
  repeat
   if (A[i+1]-A[i])=(A[i+2]-A[i+1]) then
    begin
     flag1:=true;
     if flag then
      begin
       write(A[i],' ',A[i+1],' ',A[i+2]);
       flag:=false;
      end
     else
      write(' ',A[i+2]);
     if i<N-2 then Inc(i);
    end;
  until (i>=N-2) or ((A[i+1]-A[i])<>(A[i+2]-A[i+1]));
  if i<N-2 then
   begin
    if flag1 then
     begin
      writeln;
      flag1:=false;
     end;
    flag:=true;
   end;
 Until i>=N-2;
 Readln
End.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

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