با سلام
برنامه ای که vC++ نوشته ام برنامه ای برای محاسبه اوقات شرعی برای مرکز استانهای کشور(بعلاوه شهر خودم !!) و همچنین محاسبه تاریخ قمری میباشد.
ضمنا با کار کردن بر روی آن میشه کاری کرد که با گرفتن طول و عرض جغرافیایی یک منطقه اوقات شرعی رو محاسبه کنه.
قسمت محاسبه اوقات شرعی در حقیقت کدی هست که من از زبان javascript به C++ برگردوندمش . و کدش به زبانهای دیگه (مثل vb.net) هم در بخشهای دیگر سایت موجود بود. ولی خوب تبدیلش هم خیلی وقتمو گرفت.
دقت محاسبه تا حداکثر 10 دقیقه خطا داره (البته تا جایی که من دیدم) و به قولی رعایت احتیاط واجبه . و برای بعضی از روزها هم عالی جواب میده . اگه کسی دقیقا بدونه که بعضی از ثوابتی که در این برنامه هستن چطور محاسبه شدن و از کجا اومدن شاید بتونه اونا رو برای هر سال محاسبه کنه و دقت برنامه رو بالاتر هم ببره.
چهار تا cobobox برای انتخاب شهر،ماه، زمان،و روز وجود داره .در دو قسمت Longitude و latitude طول و عرض جغرافیایی شهر مورد نظر نمایش داده میشود و بعد از فشردن دکمه Azan Time زمان اذان محاسبه میشه .در ضمن یک cheek box هم وجود داره که با انتخاب اون میتونید ساعت تابستانی رو هم منظور کنید (جلو و عقب رفتن یکساعته برای هر 6 ماه که برای 6 ماه اول یک ساعت به آن اضافه میکند) .
در ضمن برنامه تاریخ میلادی سیستم رو هم به قمری تبدیل میکنه که یکسری کلاس و تابع رو برای این کار نوشتم و بازه عملیاتی اون از سال 2005 تا 2025 میلادی است .و تاریخ قمری رو در بالای دیالوگ نمایش میده.
البته قبول دارم که کدهای برنامه کمی گیج کننده هستند و متاسفانه از متغیرهای عمومی نسبتا زیادی هم استفاده شده اما خوشبختانه عملکردش بد نیست .ضمنا برنامه رو با ویژوال سی 2008 نوشتم و کدهاش رو برای دانلود در زیر قرار میدم .
امیدوارم اگه دوستان در مورد نحوه عملکرد و محاسبه اوقات شرعی و اون ثوابتی که در موردش بحث شد اطلاعاتی دارند من رو بی اطلاع نگذارند.