FUNCTION EqNotGivenReal(Arg :real) :boolean;  (* сравнение действ.
                                            аргумента с NotGivenReal*)
FUNCTION Rad (x :REAL) :REAL;

PROCEDURE win;

FUNCTION Grad (x :REAL) :REAL;

FUNCTION Step (c, m :REAL) :REAL;

FUNCTION ArcSin (Sin_X :REAL) :REAL;

FUNCTION ArcCos (Cos_X :REAL) :REAL;




PROCEDURE Cps(VAR  c  :  R10;   {   массив результатов   }
                                          { 1-Cр, 3-Rг, 4-Kг, 6-L0 }
                   t  : Real;             { температура            }
                   x  : Real;             { 1/альфа                }
                   a  : R6x11);           { термодин. коэф-ты      }

PROCEDURE Variant(   x   : Real;    {   1/альфа               }
                     a   : R6x11;   { термодинам. коэф-ты     }
                 VAR L0  : Real;    { стехиометр. коэф-т      }
                 VAR qt  : Real;    { отн. cодержание топлива }
                 VAR ind : Integer; { вариант состава смеси   }
                 VAR d   : Real;    { a[4,11]                 }
                 VAR d1  : Real;    { 1-d                     }
                 VAR qt1 : Real);   { qt+1                    }

FUNCTION Rgasa(     a   : R6x11;    { термодинам. коэф-ты     }
                    d   : Real;     { a[4,11]                 }
                    qt  : Real;     { отн. cодержание топлива }
                    qt1 : Real;     { qt+1                    }
                    ind : Integer   { вариант состава смеси   }
                           ):Real;  { значение Rг             }

PROCEDURE Sostav(    a   : R6x11;   { термодинам. коэф-ты     }
                     d   : Real;    { a[4,11]                 }
                     d1  : Real;    { 1.0-d                   }
                     qt  : Real;    { отн. cодержание топлива }
                     qt1 : Real;    { qt+1                    }
                     L0  : Real;    { стехиометр. коэф-т      }
                     ind : Integer; { вариант состава смеси   }
                     n   : Integer; { кол-во элементов        }
                VAR  p   : R10  );  { искомый массив          }

FUNCTION Ti(  di   : Real;               { приращение энтальпии  }
              t0   : Real;               { начальная температура }
              x    : Real;               {  1/ альфа             }
              a    : R6x11;              {  термодинам. коэф-ты  }
         VAR  c    : R10                 { термодинам. свойства  }
                         ):Real;         { конечная температура  }

FUNCTION Di(   t0   : Real;               { начальная температура }
               t    : Real;               { конечная температура  }
               x    : Real;               {  1/ альфа             }
               a    : R6x11               {  термодинам. коэф-ты  }
                          ):Real;         { приращение энтальпии  }

FUNCTION Tkr( t1   : Real;               { температура торможения  }
              x    : Real;               {  1/ альфа               }
              a    : R6x11;              { термодинам. коэф-ты     }
        VAR   c    : R10                 { термодинам. свойства    }
                         ):Real;         { критическая температура }

FUNCTION Pit( t1 :  Real;               {  начальная температура }
              t2 :  Real;               {  конечная температура  }
              x  :  Real;               {  1/альфа               }
              a  :  R6x11               {  термодинам. коэф-ты   }
                         ):Real;        {  отношение давлений    }

FUNCTION Tpi( pr   : Real;               { отношение давлений    }
              t1   : Real;               { начальная температура }
              x    : Real;               {  1/ альфа             }
              a    : R6x11;              {  термодинам. коэф-ты  }
         VAR  c    : R10                { термодинам. свойства  }
                         ):Real;         { конечная температура  }

 FUNCTION Mkr(k:Real):Real;            (* к-т в уравн.расхода     *)

 FUNCTION Fq(p,t,g,q,k,r:Real):Real;  (* площадь в ур-и расхода   *)

 FUNCTION Qf(p,t,g,f,k,r:Real):Real;  (* плотность в ур-и расхода *)

 FUNCTION Gpr(p,t,g:Real):Real;        (* опр.привед.расхода      *)

 FUNCTION Kg(t,q:Real):Real;           (* опр. показат.адиабаты   *)

 FUNCTION Lmq(q,k:Real):Real;
  (* опр.привед.скорости по плотн. тока,q<1.0 *)

 FUNCTION Lmq2(q,k:Real):Real;
  (* опр.привед.скорости по плотн.тока, q>1.0 *)

 FUNCTION Qlm(la,k:Real):Real;
   (* выч. плотности тока по привед. скорости *)

 FUNCTION Pilm(la,k:Real):Real;
  (* вычисление Пи по приведенной скорости   *)

 FUNCTION Lmpi(p,k:Real):Real;
  (* вычисление приведенной скорости по Пи   *)

 FUNCTION Rg(q:Real):Real;
  (* вычисление газовой постоянной по q топлива *)

                { некоторые математические функции }

 FUNCTION Sign(A,B:Real):Real;  (*     (знак B)*A              *)

 {FUNCTION Step(a,b:Real):Real;  (* вычисление а**в через Exp   *)}


PROCEDURE LINF1( N   : Integer;              (* количество точек          *)
                 A   : Mpar;                 (* массив значений функции   *)
                 XN  : Mpar;                 (* массив значений аргумента *)
                 X   : Real;                 (* пи сопла                  *)
            VAR  Z   : Real );               (* значение мю или фи        *)

PROCEDURE msa_pr(Mode:Integer;
            pINReal13 : Real {pINInt : IntParamsPtr});

Procedure max3(y1,y2,y3:integer; var max,min:integer);

PROCEDURE PutTextXY(x,y : Integer; s : String; Col:Byte);

PROCEDURE kom_pik(G_:Real; pINName3 : string; var Pik_:Real);

PROCEDURE ris_komp(nknr,num,kol,riskom,rezim:integer;
                   pINName2,pINName3 : String;
                   pSpecialData : pSpecialObject;
                   par1,par2,par3:real);