zadach222.PAS

{* Задача 222 *}

Unit ZADACH222;
Interface
Implementation
Begin
 writeln('Дана таблица a[1..m]. Среди её элементов есть хотя бы один отрицательный. Больше ли сумма простых множителей элементов, идущих после последнего отрицательного элемента, заданного числа L');
End.

Program z6;

Uses zadach222.pas; {* Эту строку можно удалить *}
Uses crt; {* Подключение модулей *}
Var {* Объявление переменных *}
  a   : Array [1..70] Of longint;
  b   : Array [1..70] Of longint;
  i   : longint;
  poz : longint;
  l   : longint;
  m   : longint;
  s   : longint;
  k   : longint;
  n   : longint;
  fl  : longint;
  j   : longint;
Begin
  m1 : clrscr; {* Очистка экрана *}
  write('Введите число:');
  readln(l);
  write('Введите кол-во элм таблицы:');
  readln(m);
  For i := 1 To m Do {* Увеличиваем i от 1 до m с шагом 1 *}
  Begin
    write('a[', i, ']=');
    readln(a[i]);
    If a[i] < 0 Then
      poz := i;
  End;
  If poz = 0 Then
  Begin
    write('Hе обнаружен отрицательный элемент!');
    readln; {* Приостановка программы. Ожидание Enter *}
    Goto m1;
  End;
  For i := poz + 1 To m Do
    If a[i]  0 Then
      inc(fl); {* Прибавим к fl единицу *}
  If fl = 0 Then
    halt;
  b[1] := 2;
  n := 3;
  j := 1;
  fl := 0;
  m2 :
  While n  1 Do
    If a[k] Mod b[i] = 0 Then
    Begin
      s := s + b[i];
      a[k] := a[k] Div b[i];
    End;
    Else inc(i); {* Увеличиваем i на 1 *}
End;
If l = s Then
Begin
  write('равны');
  Goto m3;
End;
If l > s Then
  write('меньше')
Else write('больше');
  m3 : readln; {* Приостановка программы. Ожидание Enter *}
End....