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

أريد معادلة حساب الفرق بين تاريخين مختلفين بالأيام

مغلق
بدأه حـايرة في 26 أبريل 2005 · 9 رد · 3,177 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ...

لو سمحتو ابغى معادلة ... حساب الفرق بين تاريخين مختلفين ... ويكون الفرق بالأيام

للتاريخ الميلادي... لعام 2005 م

على سبيل المثال ... : الفرق بين هذين التاريخين

26 \ 4 \ 2005 م و 13 \ 2 \ 2005 م

هو 72 يوم

أريد المعادله اللتي تقوم بحساب الفرق بينهم ...

اذا ادخل المستخدم على برنامج c++ التاريخين

مع ملاحظة ان العام 2005 ... وملاحظة اختلاف الأيام في كل شهر ... لان بعض الشهور 31 يوم وبعضها 30 .... وهكذا

اتمنى اجد اجابة شافيه وباسرع وقت شاكرة تفاعلكم مقدما ... :)

#2

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

بالنسبه لسؤالك فاعتقد ان شاء الله بسيط

بالنسبه للسنه فهي اذا كنتي تريدين فقط سنه 2005 فاستخدمي هذه

 int s[12]={31,28,31,30,31,30,31,31,30,31,30,31};

اما اذا كنتي تريدين سنين اخرى فكل اربع سنوات ستختلف المصفوفه في شهر 2 وحيكون 29 فقط

وهذه تعملينها

if ( year%4==0)

اما عن الاختلاف بين تاريخين ادخلهما اليوزر فهذا برنامج

ان شاء الله يقدر يساعدك في فهم الفكره

#include <iostream.h>
#include <windows.h>
int Calender (int,int);
void welcome (void);
void bye (void);
void main ()
{
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED|FOREGROUND_INTENSITY);

	welcome();
	cout << endl<< endl;
    int month , day;
    cout << " Day=";
    cin>> day;
    cout << " Month=";
    cin>> month;
    cout << endl;
    cout << " The Days From Begin Year is: "  <<    Calender ( month , day)  << " Day"<< endl;
    cout << endl<<endl;
    bye ();
    cout << endl<<endl;
    cout << "                           **********************************  " << endl<< endl;
}
int Calender ( int month,int day )
{
    int x[] = {31 ,28 ,31 ,30 ,31 ,30 ,31 ,31 ,30 , 31 ,30 ,31};
    int temp = 0;
    for(int i=0; i<month-1; i++)
    temp += x;
    return  temp + day;
}
void welcome (void)
{
	cout << "                           Welcome To My PrOgRaM : " << endl;
}
void bye(void)
{
	cout << "                           Thank You SIR For USING My PrOgRaM " << endl;
}

وان شاء الله اكون قدرت اساعدك

52gv0m.gif
#3

الاخ العزيز نوري ..

اشكرك على تجاوبك السريع ...

جربت البرنامج اللي وضعته لي وطلع عندي خمس اخطاء !!!!!

ملاحظة : انا استخدم برنامج c++ turbo 4.5

#4

مرحبا

اختي انا استخدم v-c++ لا يوجد اي ايرور على العموم

فكره البرنامج تمكن في هذه الاكواد

افهميها وان شاء الله ستتوصلين للحل

 int x[] = {31 ,28 ,31 ,30 ,31 ,30 ,31 ,31 ,30 , 31 ,30 ,31};
   int temp = 0;
   for(int i=0; i<month-1; i++)
   temp += x;
   return  temp + day;

يعني لو كان عندك تاريخين ( انظري الى الفكره )

int month1 ,month2,day1,da2;
cin >>day1>>month1; cin >>day2>>month2;
int month; month=month2-month1;
int day; day=dau2-day1;

نكمل

  int x[] = {31 ,28 ,31 ,30 ,31 ,30 ,31 ,31 ,30 , 31 ,30 ,31};
   int temp = 0;
int sum;
   for(int i=0; i<month-1; i++)
   temp += x;
sum=temp+day;
cout << sum;

وبكده ما ضل عليكي الا تجمعي الاكواد

صح ؟ :lol:

52gv0m.gif
#5

هذا البرنامج :lol: :lol:

لا تقوليلي ما فهمتي شي :( :( :(

#include <iostream.h>

int Calender (int,int);
int calender2 (int,int);
void main ()
{


  
	cout << endl<< endl;
    int month1 , day1 ,month2,day2 ,sum;
    cout << " Day1=";
    cin>> day1;
    cout << " Month1=";
    cin>> month1;
	cout << " day2=";cin>>day2;
	cout << " month2=";cin>>month2;
    cout << endl;
    cout << " The Days From input user date 1: "  <<    Calender ( month1 , day1)  << " Days"<< endl;
    cout << endl<<endl;
     cout << " The Days Frominput user date 2: "  <<    calender2 ( month2 , day2)  << " Days"<< endl;
  sum =  Calender ( month2 , day2) - calender2 ( month1 , day1);
  cout << sum;
    cout << endl<<endl;
    cout << "                           **********************************  " << endl<< endl;
}
int Calender ( int month1,int day1 )
{
    int x[] = {31 ,28 ,31 ,30 ,31 ,30 ,31 ,31 ,30 , 31 ,30 ,31};
    int temp = 0;
    for( int i=0; i<month1-1; i++)
    temp += x;
    return  temp + day1;
}
int calender2 (int month2,int day2)
{
   int x[] = {31 ,28 ,31 ,30 ,31 ,30 ,31 ,31 ,30 , 31 ,30 ,31};
    int temp = 0;
    for(int i=0; i<month2-1; i++)
    temp += x;
    return  temp + day2;
}

جربي وقليلي بعدها ؟؟؟ :blink:

تم تعديل هذه المشاركة بواسطة نوري_86 في 26 أبريل 2005 في 04:58

52gv0m.gif
#6

يعطيييييييييييييييييييييك الف الف عافيه وربي يزوجك ويوسع عليك .. ويرزقك بنت الحلال اللي تسعدك وتشوف اولاد اولاد اولاد اولادك

ويطول بعمرك ... ويوفقك في اختباراتك :D

عن جد مشكوووور وماااقصرت ابدااا

بس طلب صغنن .... ممكن تشرح لي البرنامج حبه حبه ... عشان استفيد وغيري يستفيد جعله الله من موازين اعمالك ..

#7

ايوة صح نسيت ... وجعل تقر عينك بشوفة اهلك ... والله يرد القدس لاهله ويطهر فلسطين من اليهود الحاقدين

<<<<< عجوزة قاعده تدعي بحماس هههههه

تم تعديل هذه المشاركة بواسطة حـايرة في 26 أبريل 2005 في 05:26

#8
حـايرة كتب:
يعطيييييييييييييييييييييك الف الف عافيه وربي يزوجك ويوسع عليك .. ويرزقك بنت الحلال اللي تسعدك وتشوف اولاد اولاد اولاد اولادك

ويطول بعمرك ... ويوفقك في اختباراتك :D

عن جد مشكوووور وماااقصرت ابدااا

بس طلب صغنن .... ممكن تشرح لي البرنامج حبه حبه ... عشان استفيد وغيري يستفيد  جعله الله من موازين اعمالك ..

يعافيكي :rolleyes: :rolleyes:

ويزوجك ونفرح فيكي :lol: :lol:

قلب الموضوع لموضوع دعاوي وتهاني <_< <_< <_<

ان شاء الله هلا بغلق وبكره بشرحلك شو اعملت B) B) B)

52gv0m.gif
#9
حـايرة كتب:
ايوة صح نسيت ... وجعل تقر عينك بشوفة اهلك ... والله يرد القدس لاهله ويطهر فلسطين من اليهود الحاقدين

<<<<< عجوزة قاعده تدعي بحماس هههههه

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

وان شاء الله تنتهي الغربه 000

ربنا يسمع من هالعجوز دعواتها :lol: :lol: :lol: :lol:

52gv0m.gif
#10

اختي لست اهلا لكي اقف هنا واشرح لكن سأحاول بقدر ما استطيع

سوف اركز على الاشياء المهمه 00

int Calender (int,int);
int calender2 (int,int);

انا هنا عرفت two function

ويوجد بداخلهما متغيرين من نوع integer

اقتباس
اما لما استعملنا هنا الفنكشن 000 فهي تسهل علينا كثير

وعند مراجعه الكود نستطيع بكل سهوله التعديل وايجاد الاخطاء

حتى تقسيم المشروع على عده مبرمجين

cout << " The Days From input user date 1: "  <<    Calender ( month1 , day1)  << " Days"<< endl;

اما هنا فنحن نادينا على الفنكشن لتعيد لنا الناتج ما بداخلها 00

 Calender ( month1 , day1)

وقيسي عليها البقيه 000

اما عن الفكره 000

فهي تطوير للبرنامج اللي اعطيتك اياه فوق 000

فقط ضفنا فنكشن اخرى لليوم والتاريخ الثاني وادخلنهم بعمليه حسابيه

هيي نفسها عمليه الحسابيه ( فنكشن 1 )

فقط

ارجو ان اكون قد اوصلت الفكره

تحياتي

52gv0m.gif

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

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

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

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

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

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