Программа


PROGRAM Vector;
CONST MaxQuant=20; { Максимальное количество элементов массива }
TYPE Power=1..MaxQuant; { Размерность массивов }
     Element=real; { Тип элементов массивов }
     VectorType=record { Тип - вектор }
                  N:Power; { Реальное количество элементов массива }
                  V:array[Power] of Element { Массив элементов }
                end;

PROCEDURE ReadVector(Head:string; var A:VectorType); { Процедура ввода вектора }
  Var i:Power;               { Счетчик цикла }
  Begin
    WriteLn(Head);                                  { Вывод приглашения }
    Write('Введите количество элементов массива '); { Вывод приглашения }
    ReadLn(A.N);                { Ввод количества элементов массива }
    for i:=1 to A.N do          { Цикл ввода элементов массива }
    begin
      Write('Введите элемент [',i,'] '); { Вывод приглашения }
      ReadLn(A.V[i])                     { Ввод элемента массива }
    end;
  End;
PROCEDURE WriteVector(Head:string; var A:VectorType); { Процедура вывода вектора }
  Var i:Power;       { Счетчик цикла }
  Begin
    WriteLn(Head);                       { Вывод заголовка }
    for i:=1 to A.N do                   { Цикл вывода элементов массива }
      Write(A.V[i]:5:2,'   ');             { Вывод элемента }
    WriteLn;                             { Ввод конца строки }
  End;
PROCEDURE MakeVectors(A:VectorType; var X,Y:VectorType); { Процедура создания векторов }
  Var i:Power;       { Счетчик цикла }
  Begin
    X.N:=A.N; Y.N:=A.N;  { Определение размерности векторов }
    for i:=1 to A.N do   { Цикл заполнения элементов массива }
      if A.V[i]<0        { Критерий определения элемента последовательностей }
      then begin { Определение элементов массивов: }
             X.V[i]:=-1;
             Y.V[i]:=A.V[i]
           end
      else begin
             X.V[i]:=A.V[i];
             Y.V[i]:=1
           end
  End;
VAR A,X,Y:VectorType; { Исходная и создаваемые последовательности }
BEGIN
  WriteLn;                               { Пропуск строки }
  ReadVector('ВВОД ВЕКТОРА "A"',A);      { Ввод вектора }
  WriteLn;                               { Пропуск строки }
  WriteVector('ИСХОДНЫЙ ВЕКТОР "A"',A);  { Вывод вектора }
  WriteLn;                               { Пропуск строки }
  MakeVectors(A,X,Y);                    { Создание векторов X и Y }
  WriteVector('ВЕКТОР "X"',X);           { Вывод вектора }
  WriteLn;                               { Пропуск строки }
  WriteVector('ВЕКТОР "Y"',Y);           { Вывод вектора }
  WriteLn;                               { Пропуск строки }
END.

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