11-12-2009, 09:13 PM
|
#5
|
تاريخ التسجيل: Jul 2008
كلية: كلية الحاسبات وتقنية المعلومات
التخصص: IT
نوع الدراسة: عضو هيئة تدريس
المستوى: متخرج
البلد: جــــدة
الجنس: ذكر
المشاركات: 2,477
|
رد: مساعدة في حل واجب البرمجة
السنة الميلادية = 365 يوم
السنة الكبيسة (leap) = تقريبا 366 يوم
لتعرف السنة كبيسة او لا
اقسم السنة على 400 وان لم يكن هناك باقي فهي كبيسة وان كان هناك باقي فهي ليست كذلك
|
وهذا الحل على كلامك إذا كانت السنة leap أو لا :
كود:
#include <stdio.h>
int main ()
{
int day,month,year,result;
printf("Please Enter the Data , Example 9/5/2009 : ");
scanf("%d/%d/%d",&day,&month,&year);
switch (month)
{
case 1 :
result = day;
break;
case 2:
if ( (year % 400) == 0 ) result = (31 + 29) + day;
else result = (31 + 28) + day;
break;
case 3:
result = (31 + 29 + 31) + day;
break;
case 4:
result =(31 + 29 + 31 + 30) + day;
break;
case 5:
result = (31 + 29 + 31 + 30 + 31) + day;
break;
case 6:
result = (31 + 29 + 31 + 30 + 31 + 30) + day;
break;
case 8:
result = (31 + 29 + 31 + 30 + 31 + 30 + 31) + day;
break;
case 9:
result = (31 + 29 + 31 + 30 + 31 + 30 + 31 + 31) + day;
break;
case 10:
result = (31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30) + day;
break;
case 11:
result = (31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31) + day;
break;
case 12:
result = (31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30) + day;
break;
default:
result = 0;
break;
}
( result != 0 ) ? printf("The day is %d of %d.\n",result,year) : printf("Error Data.\n");
return 0;
}
بالتوفيق .
|
|
سبحان الله وبحمد ,,, سبحان الله العظيم الحمد لله كما ينبغي لجلال وجهه وعظيم سلطانه . اللهم صل على محمد وعلى آل محمد كما صليت على إبراهيم وعلى آل إبراهيم إنك حميد مجيد . اللهم بارك على محمد وعلى آل محمد كما باركت على إبراهيم وعلى آل إبراهيم إنك حميد مجيد.
|
|
|
|