Программа


CONST QuantityElement=6;   { Количество элементов вектора }
TYPE VectorType=array [1..QuantityElement] of integer; { Вектор-тип }
VAR X:VectorType; { Вектор }

FUNCTION GetNegativeMaxElementNumber (Vector:VectorType):integer;
    { Функция поиска номера максиимального отрицательного элемента вектора }
  Var i:word; { Счетчик }
      Max:integer;  { Буфер максимального элемента }
  Begin
    GetNegativeMaxElementNumber:=1; { Начальное определение значения функции }
    Max:=Vector[1]; { Начальное определение максимального отрицательного элемента }
    for i:=2 to QuantityElement do { Цикл просмотра элементов вектора }
      if (Vector[i]<0)and(((Max<0)and(Vector[i]>Max))or(Max>=0)) then
        begin
          Max:=Vector[i]; { Определение максимального отрицательного элемента }
          GetNegativeMaxElementNumber:=i { Определение значения функции }
        end
  End;

PROCEDURE InputVector (var Vector:VectorType); { Процедура ввода вектора }
  Var i:word; { Счетчик }
  Begin
    for i:=1 to QuantityElement do { Цикл ввода элементов вектора }
      begin
        Write('Введите элемент [',i,'] ');
                                 { Вывод приглашения ввести элемент вектора }
        ReadLn(Vector[i]);   { Ввод элемента вектора }
      end
  End;

PROCEDURE OutputVector (Vector:VectorType); { Процедура вывода вектора }
  Var i:word;   { Счетчик }
  Begin
    for i:=1 to QuantityElement do { Цикл вывода вектора }
      Write (Vector[i],'  ');  { Вывод элемента вектора }
    WriteLn  { Пропуск строки }
  End;

PROCEDURE ProcessVector (var Vector:VectorType;Number:word); { Процедура просмотра вектора }
  Var i:word;   { Счетчик }
  Begin
    for i:=1 to Number do { Цикл просмотра вектора }
      Vector[i]:=Sqr(Vector[i])
  End;

BEGIN
  WriteLn; { Пропуск строки }
  InputVector(X); { Ввод вектора }
  WriteLn; { Пропуск строки }
  WriteLn('Исходный вектор: ');  { Вывод заголовка }
  OutputVector(X); { Вывод вектора }
  WriteLn; { Пропуск строки }
  ProcessVector(X,GetNegativeMaxElementNumber(X)-1); { Обработка вектора }
  WriteLn('Преобразованный вектор: ');  { Вывод заголовка }
  OutputVector(X); { Вывод вектора }
  WriteLn; { Пропуск строки }
END.

Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию