الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف أقوم بحساب العمر بالسنة و الشهر و اليوم

مغلق
بدأه مراد في 6 يوليو 2004 · 4 رد · 628 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

إخواني الكرام لدي مشكلة و هي :

أريد تحديد عمر أي شخص و النتيجة تكون السنة + الشهر + اليوم .

و للتوضيح أكثر سأقوم بوضع مثال:

تاريخ ميلادي هو :(27/8/1983) و التاريخ الحالي هو(5/7/2004) أريد الناتج أن يكون:

مثلا 20 سنة و 11 شهر و 7 أيام . و كل مايهمني هو اللأرقام أي (20),(11),(7).

أرجوا أن يكون السؤال واضح و جزاكم الله خيرا.

الرئاسة العامة للبحوث العلمية والإفتاء

موقع الشيخ صالح الفوزان حفظه الله

موقع الشيخ ربيع المدخلي حفظه الله

#2
Private Sub Form_Load()
Dim BDay As String
Dim tmp() As String
BDay = InputBox("enter ur birthday")
If IsDate(BDay) Then
    tmp = Split(BDay, "/")
    Label1.Caption = "you are " & Year(Now) - Val(tmp(UBound(tmp))) & " years old"
    Label2.Caption = "and " & Month(Now) - Val(tmp(UBound(tmp) - 1)) & " months"
    Label3.Caption = "and " & Day(Now) - Val(tmp(UBound(tmp) - 2)) & " days"
End If
End Sub

ميلادي في 19/7/1987 ويقول لي برنامج هذا الكود ان عمري 17 سنه و 0 اشهر و -13 يوم اي اني ساصبح 17 بعد 13 يوم :)

راكان الحنيطي

Be Open Source

opensource-550x4752.gif

#3

السلام عليكم و رحمة الله و بركاته

بارك الله فيك يا أخ راكان على هذه المساعدة و جزاك الله كل خير

**مراد**

الرئاسة العامة للبحوث العلمية والإفتاء

موقع الشيخ صالح الفوزان حفظه الله

موقع الشيخ ربيع المدخلي حفظه الله

#4

السلام عليكم ورحمة الله وبركاته و بارك الله فيكم أخوتي ..

أريد أن أعرض عليكم هذا الكود الذي كتبته و هو يرد العمر بشكل String ولكن لا ميزته أنه لا يعيد أرقاما سالبة ولكن يعيد العمر الحقيقي أي حتى لو كان باقي لكي تتم السنة يوم واحد يقول البرنامج أن العمر هو العمر وأحد عشر شهرا و ثلاثون يوما أي أنه أكثر دقة ..

أريد رأيكم بالكود وأسألكم دعوة صالحة :

Function MyAge(Days:Word;BDate:TDateTime):String;
 var
  BYear,NYear,BMonth,NMonth,BDay,NDay,x:Word;
  Age_Years,Age_Months,Age_Days:Word;
 Begin
{Extracting the Date ...}
    BYear:=YearOf(BDate);
    BMonth:=MonthOf(BDate);
    BDay:=DayOf(BDate);
    NYear:=YearOf(Now);
    NMonth:=Monthof(Now);
    NDay:=Dayof(Now);
{Extracting the Date ... end.}

    If NDay>=BDay then
       Begin{NDay>=BDay}
         NDay:=NDay-BDay;
         If NMonth>=BMonth then
            Begin
             NMonth:=NMonth-BMonth;
             Age_Years:=NYear-Byear;
             Age_Months:=NMonth;
             Age_Days:=NDay;
            end else
            Begin
             NYear:=NYear-1;
             NMonth:=NMonth+12-BMonth;
             Age_Years:=NYear-BYear;
             Age_Months:=NMonth;
             Age_Days:=NDay;
            end;
       end{NDay>=BDay}
       else{NDay<BDay}
         Begin{NDay<BDay}
           If NMonth>=BMonth then
              Begin
               NDay:=NDay+DaysInAMonth(NYear,NMonth-1);
               NMonth:=NMonth-1-BMonth;
               NYear:=NYear-BYear;
               NDay:=NDay-BDay;
               Age_Years:=NYear-BYear;
               Age_Months:=NMonth;
               Age_Days:=NDay;
              end else
              Begin
               NYear:=NYear-1;
               If NMonth>1 then
                  NDay:=NDay+DaysInAMonth(NYear,NMonth-1)
                  else
                  NDay:=NDay+DaysInAMonth(2000,12);
                  NMonth:=NMonth+12-BMonth;
                  Age_Years:=NYear-BYear;
                  Age_Months:=NMonth;
                  Age_Days:=NDay;
              end;
         end;{NDay<BDay}
MyAge:=inttostr(Age_Years)+' years ,'+inttostr(Age_Months)+' months and '+inttostr(Age_Days)+' days ...';

 end;{MyAge Function ...}
#5

يا جماعة أتمنى أن تجربوا برنامجي اللي عملته هديه لجامعه أهلا عرب ...

وسأعمل هدية لكمن أيضا ...

ويوجد في جامعه أهلا لاعرب شرح للبرنامج بالكود ...

والبرنماج شكله جذاب ....

حملوه من المرفقات ...

برنامج ايجاد الفرق بين تاريخين.exe

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…