Jump to content

almhajer

الأعضاء
  • Content Count

    2
  • Joined

  • Last visited

Community Reputation

0 Neutral

About almhajer

  • Rank
    عضو جديد

Previous Fields

  • الدوله
    سوريا
  1. اخي المسعد بارك الله فيك وجزاك الله الف خير ولي رجاء عندك ان تجعل ماذكرت في كلا التنسيقين على شكلة معادلة حتى يتسنى لي فهما اكثر انا اختلطت الامور عندي تحويل السنة صحيح عندي ولكن تختلط عندي الشهور والايام واليوم في الاسبوع ماهو وارجو ايضا التوضيح كيفية الحصول على اليوم وبارك الله فيك وجعلها في ميزان حسناتك ولك خالص الشكر
  2. السلام عليكم بارك الله فيكم وجزاكم الله الف خير وجعله حجة لكم لاعليكم يارب العالمين الاخ سالم الجعيدي والاخوة الاعضاء يرجى االطلاع على الكود البرمجي التالي ولا ادري ماهو الخطا ناتج السنة صحيح والشهر صحيح ولكن الايام لاتاتي صحيحة وتبعت وانا احاول واتابع النص البرمجي لمدة يومين فارجو منكم ان تنظرو في هذ الكود البرمجي واحاطتي بالمشكلة وجزاكم الله الف خير function Hjre_To_Convert($day,$month,$year){ #التحقق اذا كان الشهر اكبر من 2 او يساوي 2 #أ = الشهر + 12 #ب = السنة الميلادية – 1 if($month<=2){ $A=$month+12;#ا $B=$year-1;#ب } #وإن كان الشهر الميلادي أكبر من 2 فإن #أ = الشهر #ب = السنة if($month>2){ $A=$month;#ا $B=$year;#ب } #ج = ب ÷ 100 ( إحذف الكسر مطلقاً) $J=floor($B/100);#ج #د = ب ÷ 400 ( احذف الكسر مطلقاً ) $D=floor($B/400);#د\ #ع = 2 – ج + د $C=2-$J+$D;#ع #ملاحظة : إذا كان حسابك لتاريخ يقع قبل 15 أكتوبر 1582 م #فإن ع = صفر دائماً #التحقق من ان التاريخ اصغر من 15/10/1582م $Checked_Date=$year.$month.$day;#التاريخ المراد فحصه settype($Checked_Date,'int'); $OldDate=15821015; #إن كان حسابك لتاريخ أصغر من 15 أكتوبر من عام 1582 فإن if($Checked_Date<$OldDate){ $C=0;#ع } #و = ( ب + 4716 ) × 365.25 ( احذف الكسر مطلقاً ) $O=floor(($B+4716)*365.25);#و #ز = ( أ + 1 ) × 30.6001 ( أحذف الكسر مطلقاً ) $Z=floor(($A+1)*30.6001);#ز #ح = الأيام + ز + و + ع – 1524.5 $H=$day+$Z+$O+$C-1524.5;#ح #ط = ح – 1937806.5 $T=$H-1937806.5;#ط #ك = ( ط – 1 ) ÷ 10631 ( احذف الكسر مطلقاً ) $k=floor(($T-1)/10631); #ل = ( ط + 354 ) – 10631 × ك $L=($T+354)-10631*$k; #م = ( 10985 – ل ) ÷ 5316 (احذف الكسر ) $M=floor((10985-$L)/5316); #ن = ( 50 × ل ) ÷ 17719 ( احذف الكسر ) $N=floor((50*$L)/17719); #س = ل ÷ 5670 ( احذف الكسر ) $S=floor($L/5670); #ف = ( 43 × ل ) ÷ 15238 ( احذف الكسر ) $F=floor((43*$L)/15238); #ق = م × ن + س × ف $Q=$M*$N+$S*$F; #ص = ( 30 – ق ) ÷ 15 ( احذف الكسر ) $HS=floor((30-$Q)/15); #ر = ( 17719 × ق ) ÷ 50 ( احذف الكسر ) $R=floor((17719*$Q)/50); #ش = ق ÷ 16 ( احذف الكسر ) $SH=floor($Q/16); #ت = ( 15238 × ق ) ÷ 43 ( احذف الكسر ) $T=floor((15238*$Q)/43); #ث = ل – ص × ر – ش × ت + 29 $TH=$L-$HS*$R-$SH*$T+29; #الشهر الهجري = ( 24 × ث ) ÷ 709 ( احذف الكسر ) echo$month_hajre=floor((24*$TH)/709); #غ = ( 709 × الشهر الهجري ) ÷ 24 ( احذف الكسر ) $khen=floor((709*$month_hajre)/24); #اليوم الهجري = ث – غ echo$day_hjre=$TH-$khen; #السنة الهجرية = 30 × ك + ق – 30 echo $year_hjre=30*$k+$Q-30; } مع العلم ان الكود البرمجي مكتوب بلغة البرمجة php والدالة floor لازالة الكسور وبارك الله فيكم وجزاكم الله الف خير
×