ВУЗы и колледжи

Pascal/ Помогите написать программу

Создать массив целых чисел W[1..N], содержащий серии чисел, разделенных нулями (пояснение см. в задании 31). Отсортировать по убыванию числа внутри серии. Помогите, а то вообще не понимаю.
program N80225138;
var
  W: array[1 .. 100] of shortint;
  N, a, b, i, j, k, m: byte;
begin
  randomize;
  N := random(81) + 20;
  writeln('N = ', N);
  writeln('Массив W[1..', N, ']:');
  for i := 1 to N do
  begin
    W[і] := random(111) - 50;
    if W[і] > 50 then
      W[і] := 0;
    write(W[і]:4)
  end;
  i := 1;
  while (i <= N) do
  begin
    a := i;
    while (a <= N) and (W[а] = 0) do
      inc(a);
    b := a;
    while (b < N) and (W[b + 1] <> 0) do
      inc(b);
    for j := a to b - 1 do
    begin
      m := j;
      for k := j + 1 to b do
        if W[k] > W[m] then
          m := k;
      if m <> j then
      begin
        W[j] := W[j] xor W[m];
        W[m] := W[j] xor W[m];
        W[j] := W[j] xor W[m]
      end
    end;
    i := b + 1
  end;
  writeln(#13#10#10'Преобразованный массив: ');
  for i := 1 to N do
    write(W[і]:4);
  readln
end.

Светулька
Светулька
51 590
Лучший ответ
пояснение из задания 31 в студию.
DC
Darina[Lin] Chetverikova
20 328