
-----------------------------------
Doru Dragan
07 Noi 2006 11:45


-----------------------------------
Un program BASIC care face calculul rasaritului si apusului de Soare.
Instructiunile cred ca sunt suficient de clare pentru a fi portate in orice alt limbaj. Ce urmeaza dupa apostrof sunt comentarii. Trebuie sa inlocuiesti latitudinea si longitudinea locului. Cele din program sunt de la Timisoara :D 

PI=4*ATN(1): DR=PI/180:RD=180/PI
B5=45.77                                                    'Latitudinea locului
L5=21.30                                                    'Longitudinea locului
H=-2:B5=DR*B5
INPUT "DATA (ZIUA,LUNA, ANUL):"; ZI,LU,AN
anul=an
ziua=zi
luna=lu
N=INT(275*luna/9)-2*INT((luna+9)/12)+ziua-30      'Numarul zilei din an
L0=4.8771+.0172*(N+.5-L5/360)             'Longitudinea medie m Soarelui
C=.03342*SIN(L0+1.345)
C2=RD*(ATN(TAN(L0+C))-ATN(.9175*TAN(L0+C))-C)     'Ecuatia timpului
SD=0.3978*SIN(L0+C)
CD=SQR(1-SD*SD)
SC=(SD*SIN(B5)+.0145)/(COS(B5)*CD)
IF ABS(C)>1 THEN GOTO 9
C3=RD*ATN(SC/SQR(1-SC*SC))                          'Refractia atmosferica
R1=6-H-(L5+C2+C3)/15
HR$=str$(INT(R1))
MR$=str$(INT((R1-val(HR$))*60))
S1=18-H-(L5+C2-C3)/15
HS$=str$(INT(S1))
MS$=str$(INT((S1-val(HS$))*60))
? "Soarele rasare: "+HR$+":"+MR$
? "      si apune: "+HS$+":"+MS$
END

9 IF SC>1 THEN ?"SOARELE SUS TOATA ZIUA"
   IF SC<-1 THEN ?"SOARELE JOS TOATA ZIUA"
