الانتقال إلى المحتوى

برنامج بلغة C++


bkoory-h

Recommended Posts

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

اخواني : انا مشترك في المنتدى من وقت قريب ادرس علوم حاسوب

 

وابغى مساعدتكم - لو سمحتم - في عمل  برنامج بلغة c++ يقوم بتحويل التاريخ الميلادي الى هجري والعكس \

 

مشكورين وجزاكم الله خير

رابط هذا التعليق
شارك

المنتدي ده خاص بالناس بتوع اوراكل علي فكرة , صعب اوي تلاقى حد شغال C++ ,

في متندي اسمه ARABTEAM2000 اكيد هتلاقى فيه قسم C++

رابط هذا التعليق
شارك

السلام عليكم

#include <iostream.h>
#include <conio.h>
#include <time.h>

using namespace std;

void PrintCalender(int d, int m, int y);

void main() {

const time_t current_time = time(NULL);
tm * t = localtime(&current_time);
int d = t -> tm_mday, m = (t -> tm_mon) + 1, y = (t -> tm_year) + 1900;
cout << "Today is ";
PrintCalender(d, m , y);
cout << "You Can also Manually Convert Gregorian Calender to Hijri Calender\n" << endl;

while (1) {
cout << "Enter Day : ";
cin >> d;
cout << "Enter Month : ";
cin >> m;
cout << "Enter Year : ";
cin >> y;
PrintCalender(d, m, y);
}
}

int LastDayOfGregorianMonth(int month, int year) {
// Compute the last date of the month for the Gregorian calendar.

switch (month) {
case 2:
if ((((year % 4) == 0) && ((year % 100) != 0))
|| ((year % 400) == 0))
return 29;
else
return 28;
case 4:
case 6:
case 9:
case 11: return 30;
default: return 31;
}
}

int calcAbsGregorianDays(int d, int m, int y) {
int N = d;
for (int i = m - 1; i > 0; i--)
N += LastDayOfGregorianMonth(i, y);

return N + (y - 1) * 365
+ (y - 1) / 4
- (y - 1) / 100
+ (y - 1) / 400;
}

bool IsIslamicLeapYear(int year) {
// True if year is an Islamic leap year

if ((((11 * year) + 14) % 30) < 11)
return true;
else
return false;
}

int LastDayOfIslamicMonth(int month, int year) {
// Last day in month during year on the Islamic calendar.

if (((month % 2) == 1) || ((month == 12) && IsIslamicLeapYear(year)))
return 30;
else
return 29;
}

const int IslamicEpoch = 227014; // Absolute date of start of Islamic calendar

int IslamicDate(int month, int day, int year) {
return (day // days so far this month
+ 29 * (month - 1) // days so far...
+ month/2 // ...this year
+ 354 * (year - 1) // non-leap days in prior years
+ (3 + (11 * year)) / 30 // leap days in prior years
+ IslamicEpoch); // days before start of calendar
}

char * getMonthName(int m)
{
switch (m)
{
case 1:
return "Muharram";
case 2:
return "Safar";
case 3:
return "Rabi Al-Awwal";
case 4:
return "Rabi Al-Akhar";
case 5:
return "Jumada Al-Awwal";
case 6:
return "Jumada Al-Akhirah";
case 7:
return "Rajab";
case 8:
return "Shaban";
case 9:
return "Ramadan";
case 10:
return "Shawwal";
case 11:
return "Dhul-Qadah";
case 12:
return "Dhul-Hijjah";
}
return "";
}
void PrintCalender(int d, int m, int y){
d = calcAbsGregorianDays(d, m, y);
int month, day, year;

// Search forward year by year from approximate year
year = (d - IslamicEpoch) / 355;

while (d >= IslamicDate(1, 1, year))
year++;

year--;
// Search forward month by month from Muharram
month = 1;
while (d > IslamicDate(month, LastDayOfIslamicMonth(month, year), year))
month++;

day = d - IslamicDate(month, 1, year) + 1;

cout << day << " " << getMonthName(month) << " " << year << " AH" << endl;
}
رابط هذا التعليق
شارك

طيب ممكن  أستاذ إسلام تساعدني أن أجد  material  او دروس فديويه عن #ASP.net with C 

شكراً

انا مش عارف بتتكلمي جد ولا ايه , بس علعموم اهه

رابط هذا التعليق
شارك

شكراً ..جداً الله يبارك بحضرتك

أكيد أنا أتكلم بجدية ..أين المشكلة في الموضوع

في طلب ثلني من بعد إذن حضرتك ..فيه فديوهات لعمل موقع أو مشروع يجمع شرح المواضيع فيه

شكراً مرة أخرى

رابط هذا التعليق
شارك

شكراً ..جداً الله يبارك بحضرتك

أكيد أنا أتكلم بجدية ..أين المشكلة في الموضوع

في طلب ثلني من بعد إذن حضرتك ..فيه فديوهات لعمل موقع أو مشروع يجمع شرح المواضيع فيه

شكراً مرة أخرى

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

حكاية المشروع دي متهيألي صعبة اوي , اكيد حضرتك عارفة ان محدش بيعمل حاجة من الاول للاخر ع النت , بس شوفي كده

https://www.youtube.com/playlist?list=PLwj1YcMhLRN2Y5O_olVfMT7dFe-INcWQT

 

بس عموما , ميزة الدوت نت انه في مشاريع معمولة بيه open source , اظن دي اكتر حاجة ممكن تستفيدي منها .

https://www.google.com.eg/#q=%D9%85%D8%B4%D8%B1%D9%88%D8%B9+%D8%AF%D9%88%D8%AA+%D9%86%D8%AA+

تم تعديل بواسطة eslam elbyaly
رابط هذا التعليق
شارك

شكراً ..لحضرتك أستاذ إسلام على الروابط إن شاء الله أتابع الموضوع ..جزاك الله خير 

طيب ...أوراكل ديفيلوبر تقريباً !!!؟

أقرأ ADF هذا صحيح 

كيف يعني (وبتبصى علي أبكس ) يعني ما المقصود بها؟

 

شكراً جداً لحضرتك على المساعدة 

رابط هذا التعليق
شارك

مبدع جدا أخي المشرف الفاضل أحمد حسن

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية