Реферат: Тригонометричні ефемериди планет Сонячної системи
begin
close;
end;
procedure TForm2.RadioButton1Click(Sender: TObject);
begin
PLN:=1;ZPL:=1; ZPL1:=1;
Image1.Picture.LoadFromFile('mercury.jpg');
end;
------------------------------------------------------
procedure TForm2.RadioButton9Click(Sender: TObject);
begin
PLN:=9; ZPL:=9; ZPL1:=9;
Image1.Picture.LoadFromFile('pluton.jpg');
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
Image1.Picture.LoadFromFile('star1.jpg');
Image2.Picture.LoadFromFile('sun.bmp');
ComboBox1.ItemIndex:=8;
ComboBox2.ItemIndex:=0;
ComboBox3.ItemIndex:=0;
Label4.Visible:=false;
----------------------
Label46.Visible:=false;
Button2.Enabled:=false;
end;
procedure TForm2.Button1Click(Sender: TObject);
begin
Button2.Enabled:=false;
Label4.Visible:=false;
------------------------
Label46.Visible:=false;
if PLN=0 then //захист від помилки
begin
if MessageDlg(' Ви забули вибрати планету!'+#13+'По замовчуванню буде вибрана Земля.'
,mtError,[mbOK],0)=mrOK then
begin
RadioButton3.Checked:=true;
PLN:=3;
Image1.Picture.LoadFromFile('eath.jpg');
end;
end;
D0:=StrToInt(ComboBox1.Text);
ZD:=StrToInt(ComboBox1.Text);
ZD1:=StrToInt(ComboBox1.Text);
if (D0<=0) or( D0>31) then //захист від дурня
begin
if MessageDlg('Помилка введення номера дня місяця!'
,mtError,[mbOK],0)=mrOK then
begin
ComboBox1.ItemIndex:=8;
D0:=StrToInt(ComboBox1.Text);
ZD:=StrToInt(ComboBox1.Text);
ZD1:=StrToInt(ComboBox1.Text);
end;
end;
if ComboBox2.ItemIndex=0 then
begin
M0:=1;ZM:=1; ZM1:=1;
end;
-----------------------------------
if ComboBox2.ItemIndex=11 then
begin
M0:=12;ZM:=12; ZM1:=12;
end;
if M0=0 then //захист від помилки
begin
if MessageDlg('Введення значення місяця цифрою недопустиме!',
mtError,[mbOK],0)=mrOK then
begin
ComboBox2.ItemIndex:=0;
M0:=1;
ZM:=1;
ZM1:=1;
end;
end;
R0:=StrToInt(ComboBox3.Text);
ZR:=StrToInt(ComboBox3.Text);
ZR1:=StrToInt(ComboBox3.Text);
if (R0<1990) or (R0>2100) then //захист від помилки
begin
if MessageDlg('Помилка граничних меж дат спостереження 1990-2100 рр.'
,mtError,[mbOK],0)=mrOK then
begin
ComboBox3.ItemIndex:=0;
R0:=StrToInt(ComboBox3.Text);
ZR:=StrToInt(ComboBox3.Text);
ZR1:=StrToInt(ComboBox3.Text);
end;
end;
FI:=StrToFloat(Edit1.Text);
if abs(FI)>90 then //захист від помилки
begin
if MessageDlg('Помилка введення географічної широти місця спостереження!'+#13+' Має бути в межах +-90 градусів',
mtError,[mbOK],0)=mrOK then
begin
Edit1.Text:='56';
FI:=StrToFloat(Edit1.Text);
end;
end;
LB:=StrToFloat(Edit2.Text);
if LB<0 then
begin
LB:=360+LB;
end;
i:=0;
if R0=1992 or 1996 or 2000 or 2004 or 2008 or 2012 then //високосні роки
begin
i:=1 //29 лютого
end;
case M0 of //DR номер дня моменту спостереження
1: begin DR:=D0 ; n:=0 ; k:=-0.040;end; //з початку року
2: begin DR:=31+D0; n:=0;k:=-0.094;end;
3: begin DR:=59+i+D0; n:=0;k:=-0.13;end; //n мітка пори року 0-зима,1-літо
4: begin DR:=59+i+31+D0 ; n:=1;k:=-0.131;end;
5: begin DR:=59+i+61+D0; n:=1;k:=-0.103;end; //k середня поправка зоряного часу
6: begin DR:=59+i+92+D0; n:=1;k:=-0.051;end;
7: begin DR:=59+i+122+D0; n:=1;k:=0.013;end;
8: begin DR:=59+i+153+D0; n:=1;k:=0.073;end;
9: begin DR:=59+i+184+D0; n:=1;k:=0.107;end;
10: begin DR:=59+i+214+D0; n:=0;k:=0.114;end;
11: begin DR:=59+i+245+D0; n:=0;k:=0.083;end;
12: begin DR:=59+i+275+D0; n:=0;k:=0.028;end;
end;
S0:=int((12-M0)/10); //формула 1
P0:=int((S0*12+M0-2)*30.59+D0);
RM:=int((R0-S0-1900)*365.25+P0); //номер дати спостереження з 1 березня 1900р.
if RM<=32851 then //захист від помилки
begin
if MessageDlg('Помилка введення дати спостереження!'+#13+' Має бути не раніше 9 січня 1990р.',
mtError,[mbOK],0)=mrOK then
begin
ComboBox1.ItemIndex:=8;
D0:=StrToInt(ComboBox1.Text);
ComboBox2.ItemIndex:=0;
M0:=1;
ComboBox3.ItemIndex:=0;
R0:=StrToInt(ComboBox3.Text);
end;
end;
case PLN of
1: begin Eagth1(EG,ER,ER0,ESD,EH,ER1,EGD, ED,DR);
Mercury1(AD,AG,AR,x,AR0,ASD,AH,AR1,AGD,RM,EG);
Mercury2(AAD1,ARS,AZE,AZP,ABD,AV,AYD,AYDS,AAD0,AAD,AA,AAM,AAS,AID1,AID2,AID,AB,ABM,AF,
ER,AG,EG,AR, AAH,ABG,R0);
Mercury3(AT1,ATK,ATKL,ATKLM,AP,AT2,AT3,ATG,ATS,ATSL,ATSLM,ATZ,ATZL,ATZLM,AZ,AA,EG,k,LB,
AYD,AV,FI,AB, ATKLH,ATSLH,ATZLH,n);end; //запуск процедур в модулях
2: begin Eagth1(EG,ER,ER0,ESD,EH,ER1,EGD, ED,DR);
Venus1(AD,AG,AR,x,AR0,ASD,AH,AR1,AGD,RM,EG);
Venus2(AAD1,ARS,AZE,AZP,ABD,AV,AYD,AYDS,AAD0,AAD,AA,AAM,AAS,AID1,AID2,AID,AB,ABM,AF,
ER,AG,EG,AR, AAH,ABG,R0);
Venus3(AT1,ATK,ATKL,ATKLM,AP,AT2,AT3,ATG,ATS,ATSL,ATSLM,ATZ,ATZL,ATZLM,AZ,AA,EG,k,LB,
AYD,AV,FI,AB, ATKLH,ATSLH,ATZLH,n);end;
3: Eagth1(EG,ER,ER0,ESD,EH,ER1,EGD, ED,DR);
4: begin Eagth1(EG,ER,ER0,ESD,EH,ER1,EGD, ED,DR);
Mars1(AD,AG,AR,x,AR0,ASD,AH,AR1,AGD,RM,EG);
Mars2(AAD1,ARS,AZE,AZP,ABD,AV,AYD,AYDS,AAD0,AAD,AA,AAM,AAS,AID1,AID2,AID,AB,ABM,AF,
ER,AG,EG,AR, AAH,ABG,R0);
Mars3(AT1,ATK,ATKL,ATKLM,AP,AT2,AT3,ATG,ATS,ATSL,ATSLM,ATZ,ATZL,ATZLM,AZ,AA,EG,k,LB,
AYD,AV,FI,AB, ATKLH,ATSLH,ATZLH,n);end;
5: begin Eagth1(EG,ER,ER0,ESD,EH,ER1,EGD, ED,DR);
Jupiter1(AD,AG,AR,x,AR0,ASD,AH,AR1,AGD,RM,EG);
Jupiter2(AAD1,ARS,AZE,AZP,ABD,AV,AYD,AYDS,AAD0,AAD,AA,AAM,AAS,AID1,AID2,AID,AB,ABM,AF,
ER,AG,EG,AR, AAH,ABG,R0);
Jupiter3(AT1,ATK,ATKL,ATKLM,AP,AT2,AT3,ATG,ATS,ATSL,ATSLM,ATZ,ATZL,ATZLM,AZ,AA,EG,k,LB,
AYD,AV,FI,AB, ATKLH,ATSLH,ATZLH,n);end;
6: begin Eagth1(EG,ER,ER0,ESD,EH,ER1,EGD, ED,DR);
Saturn1(AD,AG,AR,x,AR0,ASD,AH,AR1,AGD,RM,EG);
Saturn2(AAD1,ARS,AZE,AZP,ABD,AV,AYD,AYDS,AAD0,AAD,AA,AAM,AAS,AID1,AID2,AID,AB,ABM,AF,
ER,AG,EG,AR, AAH,ABG,R0);
Saturn3(AT1,ATK,ATKL,ATKLM,AP,AT2,AT3,ATG,ATS,ATSL,ATSLM,ATZ,ATZL,ATZLM,AZ,AA,EG,k,LB,
AYD,AV,FI,AB, ATKLH,ATSLH,ATZLH,n);end;
Страницы: 1, 2, 3, 4, 5, 6, 7, 8