mory2008
یک شنبه 26 آذر 1391, 11:40 صبح
با سلام خدمت اساتید محترم
من کدی دارم که اوقات شرعی رو محاسبه می کنه ولی به زبان java نوشته شده شاید بتونید ازش استفاده کنید
function showdate() {
a = new Date();
d = a.getDay();
day = a.getDate();
joomlacmsmonth = a.getMonth() + 1;
year = a.getYear();
year = (year == 0) ? 2000 : year;
(year < 1000) ? (year += 2000) : true;
year -= ((joomlacmsmonth < 3) || ((joomlacmsmonth == 3) && (day < 21))) ? 622 : 621;
switch (joomlacmsmonth) {
case 1: (day < 21) ? (joomlacmsmonth = 10, day += 10) : (joomlacmsmonth = 11, day -= 20); break;
case 2: (day < 20) ? (joomlacmsmonth = 11, day += 11) : (joomlacmsmonth = 12, day -= 19); break;
case 3: (day < 21) ? (joomlacmsmonth = 12, day += 9) : (joomlacmsmonth = 1, day -= 20); break;
case 4: (day < 21) ? (joomlacmsmonth = 1, day += 11) : (joomlacmsmonth = 2, day -= 20); break;
case 5:
case 6: (day < 22) ? (joomlacmsmonth -= 3, day += 10) : (joomlacmsmonth -= 2, day -= 21); break;
case 7:
case 8:
case 9: (day < 23) ? (joomlacmsmonth -= 3, day += 9) : (joomlacmsmonth -= 2, day -= 22); break;
case 10: (day < 23) ? (joomlacmsmonth = 7, day += 8) : (joomlacmsmonth = 8, day -= 22); break;
case 11:
case 12: (day < 22) ? (joomlacmsmonth -= 3, day += 9) : (joomlacmsmonth -= 2, day -= 21); break;
default: break;
}
document.getElementById("azanday").value = day;
document.getElementById("azanjoomlacmsmonth").value = joomlacmsmonth;
}
function main() {
showdate();
var i = document.getElementById("cities").selectedIndex;
if (i == 0)
return
var m = document.getElementById("azanjoomlacmsmonth").value;
var d = eval(document.getElementById("azanday").value);
var lg = eval(document.getElementById("longitude").value);
var lat = eval(document.getElementById("latitude").value);
var ep = sun(m, d, 4, lg)
var zr = ep[0];
delta = ep[1];
ha = loc2hor(108.0, delta, lat)
var t1 = Round(zr - ha, 24)
ep = sun(m, d, t1, lg)
zr = ep[0];
delta = ep[1];
ha = loc2hor(108.0, delta, lat)
var t1 = Round(zr - ha + 0.025, 24)
document.getElementById("azan_t1").innerHTML = hms(t1);
document.getElementById("azan_ht1").value = hhh(t1);
document.getElementById("azan_mt1").value = mmm(t1);
ep = sun(m, d, 6, lg)
zr = ep[0];
delta = ep[1];
ha = loc2hor(90.833, delta, lat)
var t2 = Round(zr - ha, 24)
ep = sun(m, d, t2, lg)
zr = ep[0];
delta = ep[1];
ha = loc2hor(90.833, delta, lat)
t2 = Round(zr - ha + 0.008, 24)
document.getElementById("azan_t2").innerHTML = hms(t2);
document.getElementById("azan_ht2").value = hhh(t2);
document.getElementById("azan_mt2").value = mmm(t2);
ep = sun(m, d, 12, lg)
ep = sun(m, d, ep[0], lg)
zr = ep[0] + 0.01;
document.getElementById("azan_t3").innerHTML = hms(zr);
document.getElementById("azan_ht3").value = hhh(zr);
document.getElementById("azan_mt3").value = mmm(zr);
ep = sun(m, d, 18, lg)
zr = ep[0];
delta = ep[1];
ha = loc2hor(90.833, delta, lat)
var t3 = Round(zr + ha, 24)
ep = sun(m, d, t3, lg)
zr = ep[0];
delta = ep[1];
ha = loc2hor(90.833, delta, lat)
t3 = Round(zr + ha - 0.014, 24)
document.getElementById("azan_t4").innerHTML = hms(t3);
document.getElementById("azan_ht4").value = hhh(t3);
document.getElementById("azan_mt4").value = mmm(t3);
ep = sun(m, d, 18.5, lg)
zr = ep[0];
delta = ep[1];
ha = loc2hor(94.3, delta, lat)
var t4 = Round(zr + ha, 24)
ep = sun(m, d, t4, lg)
zr = ep[0];
delta = ep[1];
ha = loc2hor(94.3, delta, lat)
t4 = Round(zr + ha + 0.013, 24)
document.getElementById("azan_t5").innerHTML = hms(t4);
document.getElementById("azan_ht5").value = hhh(t4);
document.getElementById("azan_mt5").value = mmm(t4);
setTimeout("main()", 60000);
shownow();
}
function sun(m, d, h, lg) {
if (m < 7)
d = 31 * (m - 1) + d + h / 24;
else
d = 6 + 30 * (m - 1) + d + h / 24;
var M = 74.2023 + 0.98560026 * d;
var L = -2.75043 + 0.98564735 * d;
var lst = 8.3162159 + 0.065709824 * Math.floor(d) + 1.00273791 * 24 * (d % 1) + lg / 15;
var e = 0.0167065;
var omega = 4.85131 - 0.052954 * d;
var ep = 23.4384717 + 0.00256 * cosd(omega);
var ed = 180.0 / Math.PI * e;
var u = M;
for (var i = 1; i < 5; i++)
u = u - (u - ed * sind(u) - M) / (1 - e * cosd(u));
var v = 2 * atand(tand(u / 2) * Math.sqrt((1 + e) / (1 - e)));
var theta = L + v - M - 0.00569 - 0.00479 * sind(omega);
var delta = asind(sind(ep) * sind(theta));
var alpha = 180.0 / Math.PI * Math.atan2(cosd(ep) * sind(theta), cosd(theta));
if (alpha >= 360)
alpha -= 360;
var ha = lst - alpha / 15;
var zr = Round(h - ha, 24);
return ([zr, delta])
}
function init() {
lgs = [0, 49.70, 48.30, 45.07, 51.64, 48.68, 46.42, 57.33, 56.29, 50.84, 59.21, 46.28, 51.41, 48.34, 49.59, 60.86, 48.50, 53.06, 53.39, 47.00, 50.86, 52.52, 50.00, 50.88, 57.06, 47.09, 54.44, 59.58, 48.52, 51.59, 54.35];
lats = [0, 34.09, 38.25, 37.55, 32.68, 31.32, 33.64, 37.47, 27.19, 28.97, 32.86, 38.08, 35.70, 33.46, 37.28, 29.50, 36.68, 36.57, 35.58, 35.31, 32.33, 29.62, 36.28, 34.64, 30.29, 34.34, 36.84, 36.31, 34.80, 30.67, 31.89];
}
function coord() {
var c = document.getElementById("cities");
var i = c.selectedIndex;
if (i == 0) {
document.getElementById("longitude").value = "";
document.getElementById("latitude").value = "";
}
else {
document.getElementById("longitude").value = lgs[i].toString()
document.getElementById("latitude").value = lats[i].toString()
}
}
function sind(x) { return (Math.sin(Math.PI / 180.0 * x)); }
function cosd(x) { return (Math.cos(Math.PI / 180.0 * x)); }
function tand(x) { return (Math.tan(Math.PI / 180.0 * x)); }
function atand(x) { return (Math.atan(x) * 180.0 / Math.PI); }
function asind(x) { return (Math.asin(x) * 180.0 / Math.PI); }
function acosd(x) { return (Math.acos(x) * 180.0 / Math.PI); }
function sqrt(x) { return (Math.sqrt(x)); }
function frac(x) { return (x % 1); }
function floor(x) { return (Math.floor(x)); }
function ceil(x) { return (Math.ceil(x)); }
function loc2hor(z, d, p) {
return (acosd((cosd(z) - sind(d) * sind(p)) / cosd(d) / cosd(p)) / 15);
}
function Round(x, a) {
var tmp = x % a;
if (tmp < 0)
tmp += a;
return (tmp)
}
function hms(x) {
x = Math.floor(3600 * x);
h = Math.floor(x / 3600);
mp = x - 3600 * h;
m = Math.floor(mp / 60);
s = Math.floor(mp - 60 * m);
return (((h < 10) ? "0" : "") + h.toString() + ":" + ((m < 10) ? "0" : "") + m.toString() + ":" + ((s < 10) ? "0" : "") + s.toString())
}
function hhh(x) {
x = Math.floor(3600 * x);
h = Math.floor(x / 3600);
mp = x - 3600 * h;
m = Math.floor(mp / 60);
s = Math.floor(mp - 60 * m);
return (((h < 10) ? "0" : "") + h.toString())
}
function mmm(x) {
x = Math.floor(3600 * x);
h = Math.floor(x / 3600);
mp = x - 3600 * h;
m = Math.floor(mp / 60);
s = Math.floor(mp - 60 * m);
return (((m < 10) ? "0" : "") + m.toString())
}
function offshownow() {
document.getElementById("azan_p1").src = "../Images/Resources/s-flash.gif"
document.getElementById("azan_p2").src = "../Images/Resources/s-flash.gif"
document.getElementById("azan_p3").src = "../Images/Resources/s-flash.gif"
document.getElementById("azan_p4").src = "../Images/Resources/s-flash.gif"
document.getElementById("azan_p5").src = "../Images/Resources/s-flash.gif"
}
function shownow() {
today = new Date();
azan_ttt = new Date();
azan_ttt.setHours(document.getElementById("azan_ht1").value);
azan_ttt.setMinutes(document.getElementById("azan_mt1").value);
if (azan_ttt.getTime() > today.getTime()) {
offshownow();
document.getElementById("azan_p1").src = "../Images/Resources/flasher.gif"
diff = azan_ttt.getTime() - today.getTime();
diff = Math.floor(diff / (1000 * 60));
hh = Math.floor(diff / (60));
ss = diff - (hh * 60)
document.getElementById("azanazan").innerHTML = "<font color=#F27900>" + hh + "</font><font color=#F27900 id=donokh>:</font><font color=#F27900>" + ss + "</font> مانده تا <font color=#F27900>اذان صبح</font>";
donokh_show();
}
else {
if (azan_ttt.getTime() == today.getTime()) {
offshownow();
document.getElementById("azan_p1").src = "../Images/Resources/flasher.gif"
document.getElementById("azanazan").innerHTML = "<font color=#F27900 id=donokh></font><font color=#F27900>اذان صبح به افق " + document.getElementById("cities").value + "</font>";
document.getElementById("pazanbox").innerHTML = "اذان صبح به افق " + document.getElementById("cities").value;
if (document.getElementById('pzpzpz').style.display == "none") { pz(); }
}
else {
azan_ttt = new Date();
azan_ttt.setHours(document.getElementById("azan_ht2").value);
azan_ttt.setMinutes(document.getElementById("azan_mt2").value);
if (azan_ttt.getTime() > today.getTime()) {
offshownow();
document.getElementById("azan_p2").src = "../Images/Resources/flasher.gif"
diff = azan_ttt.getTime() - today.getTime();
diff = Math.floor(diff / (1000 * 60));
hh = Math.floor(diff / (60));
ss = diff - (hh * 60)
document.getElementById("azanazan").innerHTML = "<font color=#F27900>" + hh + "</font><font color=#F27900 id=donokh>:</font><font color=#F27900>" + ss + "</font> مانده تا <font color=#F27900>طلوع خورشید</font>";
donokh_show();
}
else {
if (azan_ttt.getTime() == today.getTime()) {
offshownow();
document.getElementById("azan_p2").src = "../Images/Resources/flasher.gif"
document.getElementById("azanazan").innerHTML = "<font color=#F27900 id=donokh></font><font color=#F27900>طلوع خورشید</font>";
}
else {
azan_ttt = new Date();
azan_ttt.setHours(document.getElementById("azan_ht3").value);
azan_ttt.setMinutes(document.getElementById("azan_mt3").value);
if (azan_ttt.getTime() > today.getTime()) {
offshownow();
document.getElementById("azan_p3").src = "../Images/Resources/flasher.gif"
diff = azan_ttt.getTime() - today.getTime();
diff = Math.floor(diff / (1000 * 60));
hh = Math.floor(diff / (60));
ss = diff - (hh * 60)
document.getElementById("azanazan").innerHTML = "<font color=#F27900>" + hh + "</font><font color=#F27900 id=donokh>:</font><font color=#F27900>" + ss + "</font> مانده تا <font color=#F27900>اذان ظهر</font>";
donokh_show();
}
else {
if (azan_ttt.getTime() == today.getTime()) {
offshownow();
document.getElementById("azan_p3").src = "../Images/Resources/flasher.gif"
document.getElementById("azanazan").innerHTML = "<font color=#F27900 id=donokh></font><font color=#F27900>اذان ظهر به افق " + document.getElementById("cities").value + "</font>";
document.getElementById("pazanbox").innerHTML = "اذان ظهر به افق " + document.getElementById("cities").value;
if (document.getElementById('pzpzpz').style.display == "none") { pz(); }
}
else {
azan_ttt = new Date();
azan_ttt.setHours(document.getElementById("azan_ht4").value);
azan_ttt.setMinutes(document.getElementById("azan_mt4").value);
if (azan_ttt.getTime() > today.getTime()) {
offshownow();
document.getElementById("azan_p4").src = "../Images/Resources/flasher.gif"
diff = azan_ttt.getTime() - today.getTime();
diff = Math.floor(diff / (1000 * 60));
hh = Math.floor(diff / (60));
ss = diff - (hh * 60)
document.getElementById("azanazan").innerHTML = "<font color=#F27900>" + hh + "</font><font color=#F27900 id=donokh>:</font><font color=#F27900>" + ss + "</font> مانده تا <font color=#F27900>غروب خورشید</font>";
donokh_show();
}
else {
if (azan_ttt.getTime() == today.getTime()) {
offshownow();
document.getElementById("azan_p4").src = "../Images/Resources/flasher.gif"
document.getElementById("azanazan").innerHTML = "<font color=#F27900 id=donokh></font><font color=#F27900>غروب خورشید</font>";
}
else {
azan_ttt = new Date();
azan_ttt.setHours(document.getElementById("azan_ht5").value);
azan_ttt.setMinutes(document.getElementById("azan_mt5").value);
if (azan_ttt.getTime() > today.getTime()) {
offshownow();
document.getElementById("azan_p5").src = "../Images/Resources/flasher.gif"
diff = azan_ttt.getTime() - today.getTime();
diff = Math.floor(diff / (1000 * 60));
hh = Math.floor(diff / (60));
ss = diff - (hh * 60)
document.getElementById("azanazan").innerHTML = "<font color=#F27900>" + hh + "</font><font color=#F27900 id=donokh>:</font><font color=#F27900>" + ss + "</font> مانده تا <font color=#F27900>اذان مغرب</font>";
donokh_show();
}
else {
if (azan_ttt.getTime() == today.getTime()) {
offshownow();
document.getElementById("azan_p5").src = "../Images/Resources/flasher.gif"
document.getElementById("azanazan").innerHTML = "<font color=#F27900 id=donokh></font><font color=#F27900>اذان مغرب به افق " + document.getElementById("cities").value + "</font>";
document.getElementById("pazanbox").innerHTML = "اذان مغرب به افق " + document.getElementById("cities").value;
if (document.getElementById('pzpzpz').style.display == "none") { pz(); }
}
else {
azan_ttt = new Date();
azan_ttt.setHours(23);
azan_ttt.setMinutes(59);
diff = azan_ttt.getTime() - today.getTime();
diff = Math.floor(diff / (1000 * 60));
hh = Math.floor(diff / (60));
ss = diff - (hh * 60);
offshownow();
document.getElementById("azan_p1").src = "../Images/Resources/flasher.gif";
hh += Math.floor(document.getElementById("azan_ht1").value);
ss += Math.floor(document.getElementById("azan_mt1").value);
document.getElementById("azanazan").innerHTML = "<font color=#F27900>" + hh + "</font><font color=#F27900 id=donokh>:</font><font color=#F27900>" + ss + "</font> مانده تا <font color=#F27900>اذان صبح</font>";
donokh_show();
}
}
}
}
}
}
}
}
}
} setTimeout("shownow()", 20000);
}
function donokh_show() {
document.getElementById("donokh").color="#F27900"
setTimeout("donokh_hide()",500);
}
function donokh_hide() {
document.getElementById("donokh").color="#FFFFFF"
setTimeout("donokh_show()",500);
}
document.write("<input type=hidden id=latitude name=latitude><input id=azanday type=hidden name=azanday><input id=azanjoomlacmsmonth type=hidden name=azanjoomlacmsmonth><input type=hidden id=longitude name=longitude ><input type=hidden id=azan_ht1 name=azan_ht1 ><input type=hidden id=azan_mt1 name=azan_mt1 ><input type=hidden id=azan_ht2 name=azan_ht2 ><input type=hidden id=azan_mt2 name=azan_mt2 ><input type=hidden id=azan_ht3 name=azan_ht3 ><input type=hidden id=azan_mt3 name=azan_mt3 ><input type=hidden id=azan_ht4 name=azan_ht4 ><input type=hidden id=azan_mt4 name=azan_mt4 ><input type=hidden id=azan_ht5 name=azan_ht5 ><input type=hidden id=azan_mt5 name=azan_mt5 >")
document.write("<table border=0 width=151 style='font-family: Tahoma; font-size: 8pt; text-shadow: 0 0 0.2em #808080, 0 0 0.2em #808080, 0 0 0.2em #808080;' dir=rtl height=30><tr> <td align=center><span id=azanazan></span> </td></tr> </table>")
document.write("<table border=0 width=156 style='font-family: Tahoma; font-size: 8pt; text-shadow: 0 0 0.2em #808080, 0 0 0.2em #808080, 0 0 0.2em #808080;'><tr><td align=center id=azan_t1> </td><td dir=rtl width=58%> <img border=0 src=../Images/Resources/s-flash.gif width=10 height=7 id=azan_p1> <span>اذان صبح</span></td></tr><tr><td align=center id=azan_t2> </td><td dir=rtl width=58%><img border=0 src=../Images/Resources/s-flash.gif width=10 height=7 id=azan_p2> <span>طلوع خورشید</span></td> </tr><tr><td align=center id=azan_t3> </td><td dir=rtl width=58%><img border=0 src=../Images/Resources/s-flash.gif width=10 height=7 id=azan_p3> <span>اذان ظهر</span></td></tr><tr><td align=center id=azan_t4> </td><td dir=rtl width=58%><img border=0 src=../Images/Resources/s-flash.gif width=10 height=7 id=azan_p4> <span>غروب خورشید</span></td></tr><tr><td align=center id=azan_t5> </td><td dir=rtl width=58%><img border=0 src=../Images/Resources/s-flash.gif width=10 height=7 id=azan_p5> <span>اذان مغرب</span></td></tr></table>")
document.write("<table border=0 width=150 cellspacing=0 cellpadding=0 style='font-family: Tahoma; font-size: 8pt; text-shadow: 0 0 0.2em #808080, 0 0 0.2em #808080, 0 0 0.2em #808080;' dir='rtl' height=30><tr> <td align=center><span>اوقات به افق : <select id=cities size=1 name=c dir=rtl style='font-family: Tahoma; font-size: 8pt; width: 69; height: 19' onchange='coord();main();'><option value=''>انتخاب شهر</option><option value='اراک'>اراک</option><option value='اردبیل'>اردبیل</option><option value='ارومیه'>ارومیه</option><option value='اصفهان'>اصفهان</option><option value='اهواز'>اهواز</option><option value='ایلام'>ایلام</option><option value='بجنورد'>بجنورد</option> <option value='بندرعباس'>بندرعباس</option><option value='بوشهر'>بوشهر</option><option value='بیرجند'>بیرجند</option><option value='تبریز'>تبریز</option><option value='تهران'>تهران</option><option value='خرم آباد'>خرم آباد</option><option value='رشت'>رشت</option><option value='زاهدان'>زاهدان</option><option value='زنجان'>زنجان</option><option value='ساری'>ساری</option><option value='سمنان'>سمنان</option><option value='سنندج'>سنندج</option><option value='شهرکرد'>شهرکرد</option><option value='شیراز'>شیراز</option><option value='قزوین'>قزوین</option><option value='قم'>قم</option><option value='کرمان'>کرمان</option> <option value='کرمانشاه'>کرمانشاه</option><option value='گرگان'>گرگان</option><option value='مشهد'>مشهد</option><option value='همدان'>همدان</option><option value='یاسوج'>یاسوج</option><option value='یزد'>یزد</option></select></span> </td></table>")
bijan64
شنبه 06 دی 1393, 21:55 عصر
unit Unit2;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Graphics, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.StdCtrls,math,
FMX.Layouts, FMX.Memo;
type
TForm2 = class(TForm)
Label1: TLabel;
Button1: TButton;
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
dry:array[1..12,1..31] of string;
i,j:integer;
///////////////
PI:Double;
AzanSOb:string;
Toloe:String;
AzanZohr:String;
Ghoroob:String;
Maghreb:String;
lgs: Double;
lats:Double;
type
bs = record
XX:Double;
YY:Double;
end;
implementation
{$R *.fmx}
Function mod2(a:Double;b:Double):Double;
begin
mod2 := a - (b * Int(a / b));
End ;
Function rRound(X :Double; a :Double):Double;
var
tmp:Double;
begin
tmp := mod2(X, a);
If tmp < 0 Then tmp := tmp + a;
rRound := tmp;
End;
//////////////math/////////////////////
Function sind(X:Double):Double;
begin
sind := Sin(PI / 180 * X);
End;
Function cosd(X:Double):Double;
begin
cosd := Cos(PI / 180 * X) ;
End;
Function tand(X:Double):Double;
begin
tand := Tan(PI / 180 * X);
End ;
Function atand(X:Double):Double;
begin
atand := ArcTan(X) * 180 / PI;
End ;
Function asind(X:Double):Double;
begin
asind := ArcSin(X) * 180 / PI;
End ;
Function acosd(X:Double):Double;
begin
acosd := ArcCos(X) * 180 / PI;
End ;
Function Floor(X:Double):Double;
begin
Floor := Int(X);
End ;
Function ASin(X:Double):Double;
begin
ASin := ArcTan(X / Sqr(-X * X + 1.01)) ;
End ;
Function ACos(X:Double):Double;
begin
ACos := ArcTan(-X / Sqr(-X * X + 1.01)) + 2 * ArcTan(1);
End ;
Function loc2hor(z:Double;d:Double;p:Double):Double;
begin
loc2hor := acosd((cosd(z) - sind(d) * sind(p)) / cosd(d) / cosd(p)) / 15 ;
End ;
Function sgn(n:real):Integer;
Var
tn:integer ;
BEGIN
if n=0 then tn := -1;
if n>0 then tn := 1;
if n =0 then tn := 0;
sgn := tn;
END;
Function ATan2(X:Double;Y :Double):Double;
begin
If X = 0 Then begin
If Y = 0 Then
ATan2 := 1 / 0
end;
if Y > 0 Then begin
ATan2 := PI / 2
end Else begin
ATan2 := -PI / 2
End;
If X > 0 Then begin
If Y = 0 Then begin
ATan2 := 0
end Else begin
ATan2 := ArcTan(Y / X)
End;
end Else begin
If Y = 0 Then begin
ATan2 := PI
end Else begin
ATan2 := (PI - ArcTan(Abs(Y) / Abs(X))) * Sgn(Y)
End;
End;
End ;
////////////////////////////////
Function hms(X:Double):String;
var
h : Double;
mp : Double;
m : Double;
ss : Double ;
s : String;
begin
X := Floor(3600 * X) ;
h := Floor(X / 3600);
mp := X - 3600 * h ;
m := Floor(mp / 60) ;
ss := Floor(mp - 60 * m) ;
If h < 10 Then s := '0' Else s := '';
s := s + FloatToStr(h) + ':';
If m < 10 Then s := s + '0';
s := s + FloatToStr(m) + ':';
If ss < 10 Then s := s + '0';
s := s + FloatToStr(ss);
hms := s;
End;
Function sun(m:Double;d:Double; h:Double;lg:Double):bs;
var
mm :Double;
l : Double;
lst : Double;
e : Double;
omega : Double;
ep : Double;
ed : Double;
u : Double;
v :Double;
theta : Double;
delta : Double;
alpha : Double;
ha : Double;
zr : Double;
i : integer;
begin
If m < 7 Then begin
d := 31 * (m - 1) + d + h / 24;
end Else begin
d := 6 + 30 * (m - 1) + d + h / 24 ;
End;
mm := 74.2023 + 0.98560026 * d ;
l := -2.75043 + 0.98564735 * d ;
lst := 8.3162159 + 0.065709824 * Floor(d) + 1.00273791 * 24 * mod2(d, 1) + lg / 15;
e := 0.0167065 ;
omega := 4.85131 - 0.052954 * d ;
ep := 23.4384717 + 0.00256 * cosd(omega) ;
ed := 180 / PI * e ;
u := mm ;
For i := 1 To 4 do begin
u := u - (u - ed * sind(u) - mm) / (1 - e * cosd(u)) ;
end;
v := 2 * atand(tand(u / 2) * Sqr((1 + e) / (1 - e)));
theta := l + v - mm - 0.00569 - 0.00479 * sind(omega);
delta := asind(sind(ep) * sind(theta)) ;
alpha := 180 / PI * ATan2(cosd(theta), cosd(ep) * sind(theta)) ;
If alpha >= 360 Then alpha := alpha - 360 ;
ha := lst - alpha / 15 ;
zr := rRound(h - ha, 24) ;
sun.XX := zr ;
sun.YY := delta ;
end;
procedure ProcessALL(m:Double;d:Double;lg:Double;lat:Double) ;
var
ep:bs;
zr:Double;
delta: Double;
ha:Double;
t1: Double;
t2: Double;
t3: Double;
t4: Double;
begin
m := m + 1;
d := d + 1 ;
ep := sun(m, d, 4, lg);
zr := ep.XX;
delta := ep.YY;
ha := loc2hor(108, delta, lat);
t1 := rRound(zr - ha, 24);
ep := sun(m, d, t1, lg);
zr := ep.XX;
delta := ep.YY ;
ha := loc2hor(108, delta, lat);
t1 := rRound(zr - ha, 24);
AzanSOb := hms(t1);
//////////
///
ep := sun(m, d, 6, lg);
zr := ep.XX;
delta := ep.YY;
ha := loc2hor(90.833, delta, lat);
t2 := rRound(zr - ha, 24);
ep := sun(m, d, t2, lg);
zr := ep.XX ;
delta := ep.YY ;
ha := loc2hor(90.833, delta, lat);
t2 := rRound(zr - ha, 24) ;
Toloe := hms(t2);
//////
ep := sun(m, d, 12, lg);
ep := sun(m, d, ep.XX, lg);
zr := ep.XX ;
AzanZohr := hms(zr);
ep := sun(m, d, 18, lg);
zr := ep.XX;
delta := ep.YY;
ha := loc2hor(90.833, delta, lat) ;
t3 := rRound(zr + ha, 24);
ep := sun(m, d, t3, lg);
zr := ep.XX;
delta := ep.YY;
ha := loc2hor(90.833, delta, lat);
t3 := rRound(zr + ha, 24);
Ghoroob := hms(t3);
ep := sun(m, d, 18.5, lg);
zr := ep.XX;
delta := ep.YY;
ha := loc2hor(94.3, delta, lat);
t4 := rRound(zr + ha, 24);
ep := sun(m, d, t4, lg);
zr := ep.XX ;
delta := ep.YY ;
ha := loc2hor(94.3, delta, lat);
t4 := rRound(zr + ha, 24);
Maghreb := hms(t4) ;
end;
function coord(citiIndex:integer;X: Double;Y:Double):string;
begin
If citiIndex = 0 Then begin
X := 0;
Y := 0;
end Else begin
X := lgs;
Y := lats;
End;
end;
Function MiladiToShamsi(date1:TDate): String;
const
count_days : array[1..12] of Byte = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var
Year, Month, Day: Word ;
i: Byte;
st,strtemp: String;
day_year: Integer;
begin
strtemp:=FormatDateTime('yyyy/mm/dd', date1);
Year:=strtoint(copy(strtemp,1,4));
Month:=strtoint(copy(strtemp,6,2));
Day:=strtoint(copy(strtemp,9,2));
day_year:= 0;
for i:= 1 to month - 1 do
day_year:= day_year + count_days [ i ] ;
day_year:= day_year + day;
if IsLeapYear(Year) and (month > 2) then
Inc(day_year);
if (day_year <= 79) then
begin
if ((Year - 1) mod 4 = 0) then
day_year:= day_year + 11
else
day_year:= day_year + 10;
Year:= Year - 622;
if (day_year mod 30 = 0) then
begin
Month:= (day_year div 30) + 9;
Day:= 30;
end
else
begin
Month:= (day_year div 30) + 10;
Day:= day_year mod 30;
end;
end
else
begin
year:= year - 621;
day_year:= day_year - 79;
if (day_year <= 186) then
begin
if (day_year mod 31 = 0) then
begin
Month:= (day_year div 31);
Day:= 31;
end
else
begin
Month:= (day_year div 31) + 1;
Day:= day_year mod 31;
end;
end
else
begin
day_year:= day_year - 186;
if (day_year mod 30 = 0) then
begin
Month:= (day_year div 30) + 6;
Day:= 30;
end
else
begin
Month:= (day_year div 30) + 7;
Day:= day_year mod 30;
end;
end;
end; // else .
st:= IntToStr(Year) + '/';
if (Month < 10) then
st:= st + '0';
st:= st + IntToStr(Month) + '/';
if (Day < 10) then
st:= st + '0';
st:= st + IntToStr(Day);
Result:= st;
end;
procedure TForm2.Button1Click(Sender: TObject);
var
ii:string;
jj:string;
kk:string;
ll:string;
mm:string;
begin
ProcessALL(10,5,51.41,35.7);
memo1.Lines.Add('اذان صبح'+AzanSOb) ;
memo1.Lines.Add('طلوع'+Toloe) ;
memo1.Lines.Add('اذان ظهر'+AzanZohr) ;
memo1.Lines.Add('غروب'+Ghoroob) ;
memo1.Lines.Add('اذان مغرب'+Maghreb) ;
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
PI:=3.14159265358979 ;
dry[01,01]:='آغاز نوروز';
dry[01,02]:='عيد نوروز';
dry[01,02]:='هجوم مأموران ستم شاهي پهلوي به مدرسه فيضيه قم، 1342 هـ ش';
dry[01,02]:='آغاز عمليات فتح المبين، 1361 هـ ش';
dry[01,03]:='عيد نوروز';
dry[01,04]:='عيد نوروز';
dry[01,12]:='روز جمهوري اسلامي ايران';
dry[01,13]:='روز طبيعت';
dry[01,18]:='روز سلامتي (روز جهاني بهداشت)';
dry[01,19]:='شهادت آيت الله سيد محمد باقر صدر و خواهر ايشان بنت الهدي توسط حكومت بعث عراق در سال 1359 هـ.ش';
dry[01,20]:='روز ملي فناوري هسته اي';
dry[01,21]:='شهادت امير سپهبد علي صياد شيرازي، 1378 هـ ش';
dry[01,25]:='روز بزرگداشت عطار نيشابوري';
dry[01,29]:='روز ارتش جمهوري اسلامي و نيروي زميني';
dry[02,01]:='روز بزرگداشت سعدي';
dry[02,02]:='تأسيس سپاه پاسداران انقلاب اسلامي، 1358 هـ ش';
dry[02,02]:='سالروز اعلام انقلاب فرهنگي، 1359 هـ ش';
dry[02,02]:='روز زمين پاك';
dry[02,03]:='روز ملي كارآفريني';
dry[02,03]:='روز بزرگداشت شيخ بهايي';
dry[02,05]:='شكست حملة نظامي آمريكا به ايران در طبس، 1359 هـ.ش';
dry[02,09]:='روز شوراها';
dry[02,10]:='روز ملي خليج فارس';
dry[02,10]:='آغاز عمليات بيت المقدس، 1361 هـ.ش';
dry[02,12]:='شهادت استاد مرتضي مطهري، 1358 هـ ش - روز معلم';
dry[02,15]:='روز بزرگداشت شيخ صدوق';
dry[02,17]:='روز اسناد ملي';
dry[02,24]:='لغو امتياز تنباكو به فتواي آيت الله ميرزا حسن شيرازي، 1270 هـ ش';
dry[02,25]:='روز بزرگداشت فردوسي';
dry[02,27]:='روز ارتباطات و روابط عمومي';
dry[02,28]:='روز بزرگداشت حكيم عمر خيام';
dry[03,01]:='روز بهرهوري و بهينهسازي مصرف';
dry[03,01]:='روز بزرگداشت ملاصدرا، صدرالمتألهين';
dry[03,03]:='فتح خرمشهر در عمليات بيت المقدس، 1361 هـ ش - روز مقاومت، ايثار و پيروزي';
dry[03,14]:='رحلت حضرت امام خميني -ره- رهبر كبير انقلاب و بنيانگذار جمهوري اسلامي ايران، 1368هـ ش';
dry[03,14]:='انتخاب حضرت آيت الله خامنهاي به رهبري، 1368 هـ ش';
dry[03,15]:='قيام خونين 15 خرداد، 1342 هـ ش';
dry[03,20]:='روز گل و گياه';
dry[03,26]:='شهادت سربازان دلير اسلام: بخارايي، اماني، صفار هرندي و نيك نژاد، 1344 هـ ش';
dry[03,27]:='روزجهاد كشاورزي (تشكيل جهادسازندگي به فرمان حضرت امام خميني -ره-)، 1358 هـ ش';
dry[03,29]:='درگذشت دكتر علي شريعتي، 1356 هـ ش';
dry[03,30]:='انفجار در حرم حضرت امام رضا عليه السلام به دست ايادي آمريكا، 1373 هـ ش';
dry[03,31]:='شهادت دكتر مصطفي چمران، 1360 هـ ش';
dry[04,01]:='روز تبليغ و اطلاع رساني ديني، سالروز صدور فرمان حضرت امام خميني -ره- مبني بر تأسيس سازمان تبليغات اسلامي، 1360 هـ ش';
dry[04,01]:='روز اصناف';
dry[04,07]:='شهادت مظلومانة آيتالله دكتر بهشتي و 72 تن از ياران امام خميني -ره- با انفجار بمب به دست منافقان در دفتر مركزي حزب جمهوري اسلامي، 1360 هـ ش - روز قوة قضاييه';
dry[04,08]:='روز مبارزه با سلاحهاي شيميايي و ميكروبي';
dry[04,10]:='روز صنعت و معدن';
dry[04,11]:='شهادت آيت الله صدوقي چهارمين شهيد محراب به دست منافقين، 1361 هـ ش';
dry[04,12]:='سقوط هواپيماي مسافربري جمهوري اسلامي ايران توسط ناوگان آمريكاي جنايتكار، 1367 هـ ش';
dry[04,14]:='روز قلم';
dry[04,16]:='روز ماليات';
dry[04,25]:='روز بهزيستي و تأمين اجتماعي';
dry[04,27]:='اعلام پذيرش قطعنامة 598 شوراي امنيت از سوي ايران، 1367 هـ ش';
dry[05,05]:='سالروز عمليات افتخارآفرين مرصاد، 1367 هـ ش';
dry[05,06]:='روز ترويج آموزش هاي فني و حرفه اي';
dry[05,08]:='روز بزرگداشت شيخ شهاب الدين سهروردي، شيخ اشراق';
dry[05,09]:='روز اهداي خون';
dry[05,14]:='صدور فرمان مشروطيت، 1285 هـ ش';
dry[05,16]:='تشكيل جهاد دانشگاهي، 1359 هـ ش';
dry[05,17]:='روز خبرنگار';
dry[05,26]:='آغاز بازگشت آزادگان به ميهن اسلامي، 1369 هـ ش';
dry[05,28]:='كودتاي آمريكا براي بازگرداندن شاه، 1332 هـ ش';
dry[05,30]:='روز بزرگداشت علامه مجلسي';
dry[06,01]:='روز پزشك - روز بزرگداشت ابوعلي سينا';
dry[06,02]:='آغاز هفته دولت';
dry[06,04]:='روز كارمند';
dry[06,05]:='روز داروسازي - روز بزرگداشت محمد بن زكرياي رازي';
dry[06,08]:='روز مبارزه با تروريسم، انفجار دفتر نخست وزيري به دست منافقان و شهادت مظلومانة شهيدان رجايي و باهنر - 1360 هـ ش';
dry[06,10]:='روز بانكداري اسلامي، سالروز تصويب قانون عمليات بانكي بدون ربا - 1362 هـ ش';
dry[06,11]:='روز صنعت چاپ';
dry[06,13]:='روز تعاون - روز بزرگداشت ابوريحان بيروني';
dry[06,14]:='شهادت آيت الله قدوسي و سرتيپ وحيد دستجردي، 1360 هـ ش';
dry[06,17]:='قيام 17 شهريور و كشتار جمعي از مردم به دست مأموران ستمشاهي پهلوي، 1357 هـ ش';
dry[06,19]:='وفات آيت الله سيد محمود طالقاني اولين امام جمعة تهران، 1358 هـ ش';
dry[06,20]:='شهادت دومين شهيد محراب آيت الله مدني به دست منافقين، 1360 هـ ش';
dry[06,21]:='روز سينما';
dry[06,27]:='روز شعر و ادب فارسي - روز بزرگداشت استاد سيد محمدحسين شهريار';
dry[06,30]:='روز گفت و گوي تمدنها';
dry[06,31]:='آغاز جنگ تحميلي، 1359 هـ ش - آغاز هفتة دفاع مقدس';
dry[07,05]:='شكست حصر آبادان در عمليات ثامن الائمه عليه السلام، 1360 هـ ش';
dry[07,07]:='روز آتش نشاني و ايمني';
dry[07,07]:='شهادت سرداران اسلام: فلاحي، فكوري، نامجو، كلاهدوز و جهانآرا، 1360 هـ ش';
dry[07,08]:='روز بزرگداشت مولوي';
dry[07,09]:='روز همبستگي و همدردي با كودكان و نوجوانان فلسطيني';
dry[07,13]:='هجرت حضرت امام خميني -ره- از عراق به پاريس، 1357 هـ ش';
dry[07,13]:='روز نيروي انتظامي';
dry[07,14]:='روز دامپزشكي';
dry[07,20]:='روز بزرگداشت حافظ';
dry[07,20]:='روز اسكان معلولان و سالمندان';
dry[07,20]:='روز ملي كاهش اثرات بلاياي طبيعي';
dry[07,23]:='شهادت پنجمين شهيد محراب آيت الله اشرفي اصفهاني به دست منافقان، 1361 هـ ش';
dry[07,24]:='روز پيوند اوليا و مربيان';
dry[07,26]:='روز تربيت بدني و ورزش';
dry[07,29]:='روز صادرات';
dry[08,01]:='روز آمار و برنامه ريزي';
dry[08,04]:='اعتراض و افشاگري حضرت امام خميني -ره- عليه پذيرش كاپيتولاسيون، 1343 هـ ش';
dry[08,08]:='شهادت محمدحسين فهميده، بسيجي 13 ساله - روز نوجوان - روز بسيج دانشآموزي';
dry[08,10]:='شهادت آيت الله قاضي طباطبايي اولين شهيد محراب به دست منافقان، 1358 هـ ش';
dry[08,13]:='تسخير لانة جاسوسي آمريكا به دست دانشجويان پيرو خط امام، 1358 هـ ش - روز ملي مبارزه با استكبار جهاني - روز دانش آموز';
dry[08,18]:='روز ملي كيفيت';
dry[08,24]:='روز كتاب و كتابخواني';
dry[08,24]:='روز بزرگداشت آيت الله علامه سيد محمدحسين طباطبايي، 1360 هـ ش';
dry[09,05]:='روز بسيج مستضعفين، تشكيل بسيج مستضعفين به فرمان حضرت امام خميني -ره-، 1358 هـ ش';
dry[09,07]:='روز نيروي دريايي';
dry[09,09]:='روز بزرگداشت شيخ مفيد';
dry[09,10]:='شهادت آيت الله سيد حسن مدرس، 1316 هـ ش و روز مجلس';
dry[09,12]:='تصويب قانون اساسي جمهوري اسلامي ايران، 1358 هـ ش';
dry[09,13]:='روز دانشجو';
dry[09,18]:='معرفي عراق به عنوان مسؤول و آغازگر جنگ از سوي سازمان ملل، 1370 هـ ش';
dry[09,19]:='تشكيل شوراي عالي انقلاب فرهنگي به فرمان حضرت امام خميني -ره-، 1363 هـ ش';
dry[09,20]:='شهادت آيت الله دستغيب سومين شهيد محراب به دست منافقان، 1360 هـ ش';
dry[09,25]:='روز پژوهش';
dry[09,26]:='روز حمل و نقل';
dry[09,27]:='شهادت آيت الله دكتر محمد مفتح، 1358 هـ ش - روز وحدت حوزه و دانشگاه';
dry[10,04]:='ميلاد حضرت عيسي مسيح عليه السلام';
dry[10,05]:='روز ملي ايمني در برابر زلزله';
dry[10,07]:='سالروز تشكيل نهضت سوادآموزي به فرمان حضرت امام خميني -ره-، 1358 هـ ش';
dry[10,07]:='شهادت آيت الله حسين غفاري به دست مأموران ستمشاهي پهلوي، 1353 هـ ش';
dry[10,19]:='قيام خونين مردم قم، 1356 هـ ش';
dry[10,20]:='شهادت ميرزا تقي خان اميركبير، 1230 هـ ش';
dry[10,22]:='تشكيل شوراي انقلاب به فرمان حضرت امام خميني -ره-، 1357 هـ ش10,26,فرار شاه معدوم، 1357 هـ ش';
dry[10,27]:='شهادت نواب صفوي، طهماسبي، برادران واحدي و ذوالقدر از فداييان اسلام، 1334 هـ ش';
dry[11,12]:='بازگشت حضرت امام خميني -ره- به ايران، 1357 هـ ش، آغاز دهة مبارك فجر انقلاب اسلامي ';
dry[11,19]:='روز نيروي هوايي';
dry[11,22]:='پيروزي انقلاب اسلامي ايران و سقوط نظام شاهنشاهي، 1357 هـ ش';
dry[11,29]:='قيام مردم تبريز به مناسبت چهلمين روز شهادت شهداي قم، 1356 هـ ش';
dry[12,05]:='روز بزرگداشت خواجه نصيرالدين طوسي - روز مهندسي';
dry[12,08]:='روز امور تربيتي و تربيت اسلامي';
dry[12,09]:='روز ملي حمايت از حقوق مصرف كنندگان';
dry[12,14]:='روز احسان و نيكوكاري';
dry[12,15]:='روز درختكاري';
dry[12,16]:='روز وقف';
dry[12,22]:='روز بزرگداشت شهدا، سالروز صدور فرمان حضرت امام خميني -ره- مبني بر تأسيس بنياد شهيد انقلاب اسلامي، 1358 هـ ش';
dry[12,25]:='بمباران شيميايي حلبچه توسط ارتش بعث عراق، 1366 هـ ش';
dry[12,29]:='روز ملي شدن صنعت نفت ايران، 1329 هـ ش';
form2.Caption:=' امروز '+ MiladiToShamsi(now) + ' هجری شمسی ، مصادف با ' + DateToStr(now) + ' میلادی';
i:=strtoint(copy(MiladiToShamsi(now),6,2));
j:=strtoint(copy(MiladiToShamsi(now),9,2));
Label1.Text:=dry[i,j];
end;
end.
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.