Ìåíþ
Ïîèñê



ðåôåðàòû ñêà÷àòü Ðàçðàáîòêà èíâåñòèöèîííîãî ïðîåêòà ÎÀÎ "Çàâîä ïî ïðîèçâîäñòâó òðóá áîëüøîãî äèàìåòðà"


//----------------------------------Ðàññ÷åò îáùåãî ðèñêà ïðîåêòà

      re:=TR[iv,k,ii];

      min:=mVt[iv,j];

      if mRt[ii,j]<min then min:=mRt[ii,j];

      if mCt[k,j]<min then min:=mCt[k,j];

      if re=1 then begin

         A1:=0;B1:=0;K1:=0;C1:=0;

         C2:=(((1-min)*(kre[2]-kre[1]))+2*kre[1])/2;

         K2:=(kre[1]+kre[2])/2;

         A2:=(-2/(kre[2]-kre[1]));

         B2:=1+((2*kre[1])/(kre[2]-kre[1]));

      end;

      if re=2 then begin

         A1:=2/kre[2];

         B1:=-kre[1]/kre[2];

         K1:=kre[1]/2;

         C1:=((min*kre[2])+kre[1])/2;

         C2:=(((1-min)*kre[3])+kre[2]+(min*kre[1]))/2;

         K2:=(kre[2]+kre[3])/2;

         A2:=(-2/(kre[3]-kre[1]));

         B2:=1+((kre[1]+kre[2])/(kre[3]-kre[1]));

      end;

      if re=3 then begin

         A1:=2/(kre[3]-kre[1]);

         B1:=-(kre[1]+kre[2])/(kre[3]-kre[1]);

         K1:=(kre[1]+kre[2])/2;

         C1:=((min*(kre[3]-kre[1]))+kre[1]+kre[2])/2;

         C2:=(((1-min)*(1-kre[2]))+kre[3]+kre[2])/2;

         K2:=(kre[3]+1)/2;

         A2:=(-2/(1-kre[2]));

         B2:=1-((kre[2]+kre[3])/(1-kre[2]));

      end;

      if re=4 then begin

         A1:=(2/(kre[3]-kre[2]));

         B1:=-(kre[2]+kre[3])/(kre[3]-kre[2]);

         K1:=(kre[2]+kre[3])/2;

         C1:=((min*(kre[3]-kre[2]))+kre[2]+kre[3])/2;

         C2:=1;K2:=0;A2:=0;B2:=0;

      end;

      vrch:=(A1*((C1*C1*C1)-(K1*K1*K1))/3);

      vrch:=vrch+((B1*((C1*C1)-(K1*K1)))/2);

      vrch:=vrch+(min*((C2*C2)-(C1*C1))/2);

      vrch:=vrch+(A2*(((K2*K2*K2)-(C2*C2*C2)))/3)+(B2*((K2*K2)-(C2*C2))/2);

      vrz:=(A1*((C1*C1)-(K1*K1))/2);

      vrz:=vrz+(B1*(C1-K1));

      vrz:=vrz+(min*(C2-C1));

      vrz:=vrz+(A2*((K2*K2)-(C2*C2))/2)+(B2*(K2-C2));

      vr:=vrch/vrz;

//----------------------

     if TR[iv,k,ii]=1 then begin

       if (vr<=(kre[1]/2)) or (vr>=((kre[2]+kre[3])/2)) then mvr2:=0;

       if (vr>(kre[1]/2)) and (vr<((kre[1]+kre[2])/2)) then mvr2:=(2*vr-kre[1])/(kre[2]);

       if (vr>=((kre[1]+kre[2])/2)) and (vr<=((kre[2]+kre[3])/2)) then mvr2:=1-((2*vr-kre[1]-kre[2])/(kre[3]-kre[1]));


       if vr>=((kre[1]+kre[2])/2) then mvr1:=0;

       if (vr<((kre[1]+kre[2])/2)) and (vr>C2) then mvr1:=1-(2*(vr-kre[1])/(kre[2]-kre[1]));

       if vr<=C2 then mvr1:=min;

       if mvr2>mvr1 then re:=2;

     end;

     if TR[iv,k,ii]=2 then begin

       if (vr<=((kre[1]+kre[2])/2)) or (vr>=((kre[3]+1)/2)) then mvr3:=0;

       if (vr>((kre[1]+kre[2])/2)) and (vr<((kre[2]+kre[3])/2)) then mvr3:=(2*vr-kre[1]-kre[2])/(kre[3]-kre[1]);

       if (vr<((kre[3]+1)/2)) and (vr>((kre[2]+kre[3])/2)) then mvr3:=1-((2*vr-kre[2]-kre[3])/(1-kre[2]));


       if (vr<=(kre[1]/2)) or (vr>=((kre[2]+kre[3])/2)) then mvr2:=0;

       if (vr>(kre[1]/2)) and (vr<C1) then mvr2:=(2*vr-kre[1])/(kre[2]);

       if (vr>=C1) and (vr<=C2) then mvr2:=min;

       if (vr>=C2) and (vr<((kre[2]+kre[3])/2)) then mvr2:=1-((2*vr-kre[1]-kre[2])/(kre[3]-kre[1]));


       if vr>=((kre[1]+kre[2])/2) then mvr1:=0;

       if (vr<((kre[1]+kre[2])/2)) and (vr>kre[1]) then mvr1:=1-(2*(vr-kre[1])/(kre[2]-kre[1]));

       if vr<=kre[1] then mvr1:=1;

       if mvr1>mvr2 then re:=1;

       if mvr3>mvr2 then re:=3;

     end;

     if TR[iv,k,ii]=3 then begin

       if vr<=((kre[2]+kre[3])/2) then mvr4:=0;

       if (vr>((kre[2]+kre[3])/2)) and (vr<kre[3]) then mvr4:=(2*vr-kre[2]-kre[3])/(kre[3]-kre[2]);

       if vr>=kre[3] then mvr4:=1;


       if (vr<=((kre[1]+kre[2])/2)) or (vr>=((kre[3]+1)/2)) then mvr3:=0;

       if (vr>((kre[1]+kre[2])/2)) and (vr<C1) then mvr3:=(2*vr-kre[1]-kre[2])/(kre[3]-kre[1]);

       if (vr>=C1) and (vr<=C2) then mvr3:=min;

       if (vr<((kre[3]+1)/2)) and (Vt[i]>C2) then mvr3:=1-((2*vr-kre[2]-kre[3])/(1-kre[2]));


       if (vr<=(kre[1]/2)) or (vr>=((kre[2]+kre[3])/2)) then mvr2:=0;

       if (vr>(kre[1]/2)) and (vr<((kre[1]+kre[2])/2)) then mvr2:=(2*vr-kre[1])/(kre[2]);

       if (vr>=((kre[1]+kre[2])/2)) and (vr<=((kre[2]+kre[3])/2)) then mvr2:=1-((2*vr-kre[1]-kre[2])/(kre[3]-kre[1]));

       if mvr4>mvr3 then re:=4;

       if mvr2>mvr3 then re:=2;

     end;

     if TR[iv,k,ii]=4 then begin

       if vr<=((kre[2]+kre[3])/2) then mvr4:=0;

       if (vr>((kre[2]+kre[3])/2)) and (Vt[i]<C1) then mvr4:=(2*vr-kre[2]-kre[3])/(kre[3]-kre[2]);

       if vr>=C1 then mvr4:=min;


       if (vr<=((kre[1]+kre[2])/2)) or (vr>=((kre[3]+1)/2)) then mvr3:=0;

       if (vr>((kre[1]+kre[2])/2)) and (vr<((kre[2]+kre[3])/2)) then mvr3:=(2*vr-kre[1]-kre[2])/(kre[3]-kre[1]);

       if (vr<((kre[3]+1)/2)) and (vr>((kre[2]+kre[3])/2)) then mvr3:=1-((2*vr-kre[2]-kre[3])/(1-kre[2]));

       if mvr3>mvr4 then re:=3;

     end;

//---------------------

      if re=1 then begin

                     Form3.StringGrid2.Cells[4,j]:=FloatToStrF(vr,ffFixed,9,2)+'-ìèíèìàëüíûé';

                     Edit4.Text:='ìèíèìàëüíûé';

                   end;

      if re=2 then begin

                     Form3.StringGrid2.Cells[4,j]:=FloatToStrF(vr,ffFixed,9,2)+'-ïîâûøåííûé';

                     Edit4.Text:='ïîâûøåííûé';

                   end;

      if re=3 then begin

                     Form3.StringGrid2.Cells[4,j]:=FloatToStrF(vr,ffFixed,9,2)+'-êðèòè÷åñêèé';

                     Edit4.Text:='êðèòè÷åñêèé';

                   end;

      if re=4 then begin

                     Form3.StringGrid2.Cells[4,j]:=FloatToStrF(vr,ffFixed,9,2)+'-íåäîïóñòèìûé';

                     Edit4.Text:='íåäîïóñòèìûé';

                   end;

   end;

   Edit3.Text:=FloatToStrF(vr,ffFixed,9,2);

 end;


procedure TForm1.N7Click(Sender: TObject);

begin

   Form2.Show;

end;


procedure TForm1.N3Click(Sender: TObject);

Var

    Myfile : Textfile;

    Date : String;

begin

    If (saveDialog1.Execute) then begin

               AssignFile(Myfile,Savedialog1.FileName);

               Try Rewrite(myFile);

               Except

                   Showmessage('Îøèáêà ïðè ÷òåíèè ôàéëà!'); Exit;

               end;

               Date:=IntToStr(SpinEdit1.Value);WriteLn(MyFile,Date);

               Date:=Edit1.Text;WriteLn(MyFile,Date);

               Date:=Edit2.Text;WriteLn(MyFile,Date);

               For i:=0 to n-1 do begin

                   Date:=StringGrid1.Cells[i,1];

                   WriteLn(Myfile,Date);

               end;

               For i:=0 to n-1 do begin

                   Date:=StringGrid2.Cells[i,1];

                   WriteLn(Myfile,Date);

               End;

               For i:=0 to n-1 do begin

                   Date:=StringGrid3.Cells[i,1];

                   WriteLn(Myfile,Date);

               End;

               Date:=IntToStr(StringGrid4.ColCount);WriteLn(Myfile,Date);

               For i:=0 to StringGrid4.ColCount-1 do begin

                   Date:=StringGrid4.Cells[i,1];

                   WriteLn(Myfile,Date);

               End;

               With Form2 do begin

                    Date:=IntToStr(SpinEdit1.Value);WriteLn(Myfile,Date);

                    Date:=Edit1.Text;WriteLn(Myfile,Date);

                    For i:=0 to nRt-1 do begin

                        Date:=StringGrid1.Cells[i,1];

                        WriteLn(Myfile,Date);

                    end;

                    For i:=0 to nRt-1 do begin

                        Date:=StringGrid2.Cells[i,1];

                        WriteLn(Myfile,Date);

                    end;

               end;

     Closefile(myFile);

   end

  else Begin Showmessage('Îøèáêà!'); Exit;end;

end;


procedure TForm1.N4Click(Sender: TObject);

Var

     Myfile : Textfile;

     Date : String;

begin

     If (OpenDialog1.Execute)  then begin

                  AssignFile(Myfile,Opendialog1.FileName);

                  Try Reset(myFile);

                  Except

                      Showmessage('Îøèáêà ïðè ÷òåíèè ôàéëà!'); Exit;

                  end;

                  ReadLn(MyFile,Date);SpinEdit1.Value:=StrToInt(Date);n:=StrToInt(Date);

                  ReadLn(MyFile,Date);Edit1.Text:=Date;

                  ReadLn(MyFile,Date);Edit2.Text:=Date;

                  For i:=0 to n-1 do begin

                      ReadLn(MyFile,Date);

                      StringGrid1.Cells[i,1]:=Date;

                  end;

                  For i:=0 to n-1 do begin

                      ReadLn(MyFile,Date);

                      StringGrid2.Cells[i,1]:=Date;

                  End;

                  For i:=0 to n-1 do begin

                      ReadLn(MyFile,Date);

                      StringGrid3.Cells[i,1]:=Date;

                  End;

                  ReadLn(MyFile,Date);StringGrid4.ColCount:=StrToInt(Date);

                  For i:=0 to StringGrid4.ColCount-1 do begin

                      ReadLn(MyFile,Date);

                      StringGrid4.Cells[i,1]:=Date;

                  End;

                  With Form2 do begin

                     ReadLn(MyFile,Date);SpinEdit1.Value:=StrToInt(Date);

                     nRt:=StrToInt(Date);StringGrid1.ColCount:=nRt;StringGrid2.ColCount:=nRt;

                     ReadLn(MyFile,Date);Edit1.Text:=Date;

                     For i:=0 to nRt-1 do begin

                        ReadLn(MyFile,Date);

                        StringGrid1.Cells[i,1]:=Date;

                     end;

                     For i:=0 to nRt-1 do begin

                        ReadLn(MyFile,Date);

                        StringGrid2.Cells[i,1]:=Date;

                     end;

                  end;

               Closefile(myFile);

               if StringGrid4.ColCount=1 then CheckBox1.Checked:=true;

  end

  else Begin Showmessage('Ôàéë íå íàéäåí!'); Exit;end;

end;


procedure TForm1.N6Click(Sender: TObject);

begin

  Form4.Show;

end;


procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);

begin

   Case key of

      chr(45),chr(48),chr(49),chr(50),chr(51),chr(52),chr(53),chr(54), chr(55),chr(56),chr(57),chr(44),chr(8):;

   else key:=chr(0); end;

end;


procedure TForm1.N5Click(Sender: TObject);

begin

 Form5.show;

end;

procedure TForm1.N9Click(Sender: TObject);

begin

   Form6.show;

end;


procedure TForm1.Button1Click(Sender: TObject);

begin

Form3.Show;

end;

end.


unit Rtmodul;


interface


uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, Buttons, ExtCtrls, Grids, Spin;


type

  TForm2 = class(TForm)

    GroupBox1: TGroupBox;

    Label1: TLabel;

    SpinEdit1: TSpinEdit;

    Label2: TLabel;

    Edit1: TEdit;

    GroupBox2: TGroupBox;

    StringGrid1: TStringGrid;

    GroupBox3: TGroupBox;

    StringGrid2: TStringGrid;

    Panel1: TPanel;

    BitBtn1: TBitBtn;

    BitBtn2: TBitBtn;

    procedure SpinEdit1Change(Sender: TObject);

    procedure Edit1KeyPress(Sender: TObject; var Key: Char);

    procedure FormCreate(Sender: TObject);

    procedure StringGrid1KeyPress(Sender: TObject; var Key: Char);

    procedure StringGrid2KeyPress(Sender: TObject; var Key: Char);

    procedure BitBtn1Click(Sender: TObject);

    procedure BitBtn2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;


var

  Form2: TForm2;

  Rtkey : boolean;

  i,j,ii : integer;

  NPVpmin,NPVpmax,NPVpav,smin,smax : real;{ïðîãíîçíîå çíà÷åíèå NPV äëÿ èíòåðâàëà}

implementation


uses datamodul;


{$R *.dfm}


procedure TForm2.SpinEdit1Change(Sender: TObject);

begin

   nRt:=SpinEdit1.Value;

   StringGrid1.ColCount:=nRt;

   StringGrid2.ColCount:=nRt;

   for i:=1 to nRt do begin

       StringGrid1.Cells[i-1,0]:=IntToStr(i);

       StringGrid2.Cells[i-1,0]:=IntToStr(i);

   end;

end;


procedure TForm2.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

  Case key of

      chr(45),chr(48),chr(49),chr(50),chr(51),chr(52),chr(53),chr(54),

      chr(55),chr(56),chr(57),chr(44),chr(8):;

   else key:=chr(0);

   end;

end;


procedure TForm2.FormCreate(Sender: TObject);

begin

   nRt:=n;

   StringGrid1.ColCount:=nRt;

   StringGrid2.ColCount:=nRt;

   for j:=0 to nRt-1 do begin

       StringGrid1.Cells[j,0]:=IntToStr(j+1);

       StringGrid2.Cells[j,0]:=IntToStr(j+1);

   end;

   For i:=1 to n do begin

       RSvar[i]:=0;

       Rdvar[i]:=0;

   end;

end;


procedure TForm2.StringGrid1KeyPress(Sender: TObject; var Key: Char);

begin

   Case key of

      chr(45),chr(48),chr(49),chr(50),chr(51),chr(52),chr(53),chr(54),

      chr(55),chr(56),chr(57),chr(44),chr(8):;

   else key:=chr(0);

   end;

end;


procedure TForm2.StringGrid2KeyPress(Sender: TObject; var Key: Char);

begin

   Case key of

      chr(45),chr(48),chr(49),chr(50),chr(51),chr(52),chr(53),chr(54),

      chr(55),chr(56),chr(57),chr(44),chr(8):;

   else key:=chr(0);

   end;

end;


procedure TForm2.BitBtn1Click(Sender: TObject);

begin

//----------------------------- Ââîä çíà÷åíèé â ìàññèâ  äëÿ ðàññ÷åòà êîýô-òà ëèêâèäíîñòè Rt


    try Ir:=StrToFloat(Edit1.Text); Except Ir:=0; Edit1.Text:=IntToStr(0); end;


    for i:=1 to nRt do begin

       try

         RSvar[i]:=StrToFloat(StringGrid2.Cells[i-1,1]);

       Except

         StringGrid2.Cells[i-1,1]:=IntToStr(0);

       end;

       try

         Rdvar[i]:=StrToFloat(StringGrid1.Cells[i-1,1]);

       Except

         StringGrid1.Cells[i-1,1]:=IntToStr(0);

       end;

    end;

    Rtkey:=true;

    Form2.Hide;

    Form1.Show;

end;


procedure TForm2.BitBtn2Click(Sender: TObject);

begin

  nRt:=n;

  Rtkey:=false;

  Form2.Close;

end;


end.

 


unit Formirmodul;


interface


uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, Grids, StdCtrls, Menus;


type

  TForm4 = class(TForm)

    MainMenu1: TMainMenu;

    N1: TMenuItem;

    N2: TMenuItem;

    N3: TMenuItem;

    N4: TMenuItem;

    N5: TMenuItem;

    N6: TMenuItem;

    N7: TMenuItem;

    GroupBox1: TGroupBox;

    Label1: TLabel;

    StringGrid1: TStringGrid;

    GroupBox2: TGroupBox;

    StringGrid2: TStringGrid;

    SaveDialog1: TSaveDialog;

    OpenDialog1: TOpenDialog;

    procedure FormCreate(Sender: TObject);

    procedure N5Click(Sender: TObject);

Ñòðàíèöû: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16




Íîâîñòè
Ìîè íàñòðîéêè


   ðåôåðàòû ñêà÷àòü  Íàâåðõ  ðåôåðàòû ñêà÷àòü  

© 2009 Âñå ïðàâà çàùèùåíû.