تا %60 تخفیف خرید برای 5 نفر با صدور مدرک فقط تا
00 00 00
حسن  سهرابیان

الگوریتم تبدیل تاریخ میلادی به هجری قمری

سلام دوستان ، کسی مقاله ای در رابطه ی با تبدیل تاریخ میلادی به هجری قمری میشناسه به بنده معرفی کنه ؟ الگوریتم قابل فهمی داشته باشه تا به سورس کد تبدیل کنم .به مرکز ژئوفیزیک دانشگاه تهران پیام دادم ولی متاسفانه جوابی دریافت نکردم . خیلی ممنون میشم کمکم کنید .

این سوال 1 پاسخ دارد.
لذت یادگیری با توسینسو
به عنوان شخصی که مدت هاست از سایت توسینسو استفاده می کنم باید بگم که واقعاً یکی از بهترین مرجع ها برای ارتقاء دانش شخصی هست. دوره های سایت، راهکارها و مطالب، همگی عالی هستند.
محمد نصیری

ITPRO ی عزیز الگوریتم پیچیده ای نداره به مطلب زیر توجه کنید :


بايد توجه داشت که روزهاي ماه هاي شمسي و ميلادي درتمام سال ها يکسان است و تغيير نمي کند. مثلا شروع ژانويه برابر 11 دي و اول فروردين مطابق 21 مارس است لذا با استفاده از هر تقويمي مي توان مطابقت روزهاي ماه هاي شمسي و ميلادي از هر سال را پيدا کرد.

الف - تبديل تاريخ هجري شمسي به ميلادي


براي تبديل سال شمسي به ميلادي چنانچه روز موردنظر بين اول فروردين تا 11 دي باشد عدد 621 و اگر روز موردنظر بين11 دي تا آخر اسفند باشد عدد 622 رابه سال شمسي مي افزاييم تا سال ميلادي به دست آيد.مثلا براي اين که بدانيم 15 خرداد (که هميشه برابر 5 ژوئن است) از سال 1342 و 22 بهمن (11 فوريه) سال 1357 هجري شمسي مطابق چه سال ميلادي است اينگونه محاسبه مي کنيم.

ميلادي 1963= 621 + 1342

ميلادي 1979= 622 + 1357

ب - تبديل تاريخ ميلادي به هجري شمسي


چنانچه روز مورد نظر بين اول ژانويه تا 21 مارس باشد، عدد 622 و اگر روز مطلوب بين 22 مارس تا آخر دسامبر باشد عدد 621 را از سال ميلادي کسر مي کنيم. مثال 1: 26 ژانويه (6 بهمن) 1978 ميلادي (روز امضاي پيمان ننگين کمپ ديويد) مطابق چه سال هجري شمسي است؟

هجري شمسي 1356 = 622 - 1978

مثال 2: 6 آگوست (15 مرداد) 1945 ميلادي (روز بمباران اتمي هيروشيما) مطابق چه سال هجري شمسي است؟

هجري شمسي 1324 = 621 - 1945

روش تبديل سال قمري به سال شمسي و بالعکس


هر سال قمري تقريبا 10 روز و 21 ساعت از سال شمسي کوتاهتر است در نتيجه بر مبناي محاسبه سال قمري، از مبدا تاريخ اسلام يعني هجرت حضرت رسول اکرم (ص) تاکنون در مقايسه با سال شمسي 41 سال بيشتر گذشته است و به تعبير ديگر هر 33 سال شمسي، 34 سال قمري است. بنابراين براي تبديل سال قمري به سال شمسي و بالعکس از اعداد 33 و 34 به روش زير استفاده مي شود.

1414 = 41+1373  41= 33:1373
1373 = 41- 1414  41= 34: 1414

منبع : مردم سالاری دات کام

به دیگران بی منت کمک کن ، خدا جایی بهت میرسونه که تصورش رو نمی کنی
حامد

سلام

ضمن عرض ارادت بسیار به برادر یونیتی عرض کنم که سال میلادی و شمسی "در تمام سال ها یکسان نیست و تغییر میکنه"

دلیلش هم بحث سال کبیسه هستش

مثلاً :

1 فروردین 1395 (سال کبیسه) = Sunday, March 20, 2016

1 فروردین 1396 = Tuesday, March 21, 2017

1 فروردین 1397 = Wednesday, March 21, 2018

1 فروردین 1398 = Thursday, March 21, 2019

1 فروردین 1399 (سال کبیسه) = Friday, March 20, 2020

بنابراین الگوریتم تبدیل تاریخ یه مقداری پیچیده ست !

این لینک رو یک نگاه بکنید دقیقاً روش درست رو با مثال توضیح داده !

وقتی برنامه رو نوشتی میتوین بری توی سایت تایم دات آی آر و تست کنی ببینی تبدیل تاریخت درست انجام میشه یا نه!

  • انتخاب شده به عنوان جواب توسط 1 نفر
علیرضا عارف

سلام،

شاید لینک زیر بتونه کمکتون کنه (با حفظ منبع)

سورس تبدیل تاریخ های هجری،قمری و میلادی به یکدیگر در #C و VB.NET

(کمال آدمی=افکار مثبت، گفتار نیکو و کردار پسندیده)-وقتی کسی در کنارت هست،خوب نگاهش کن،به لبخند بین حرف هایش،به سبک ادای کلماتش،...،دست هایش را به حافظه ات بسپار،گاهی زود،دیر می شود.
پاسخ شما
برای ارسال پاسخ خود وارد شوید.