PDA

View Full Version : تعیین روز هفته



hamid206
سه شنبه 21 خرداد 1387, 19:33 عصر
الگوریتم یافتن روز هفته چی هست مثلا 3/5/87 میشه چند شنبه ؟ البته اگه تاریخ میلادی هم بدیم بشه روز رو برگردونه مشکل حل هست . تو زبان های دیگه من یک سری توابع اماده دیده بودم .

hamid206
چهارشنبه 22 خرداد 1387, 10:27 صبح
کسی نیست کمک کنه ؟

A_Salimi
چهارشنبه 22 خرداد 1387, 12:29 عصر
در مورد تاریخ های میلادی یا شمسی ؟

در مورد میلادی کلاسهای آماده ای وجود داره . . . مثل Ctime
اما در مورد شمسی :

اگه بخوای خودت الگوریتم رو بنویسی که تنها راهش اینه که یک روز مرجع رو در نظر بگیری و بعدش براساس اون تاریخ در تقویم حرکت کنی که الگوریتم راحتی نیست و حداقل 10 تایی تابع میخواد که وضعیت ماها هفته ها سالهای کبیسه و ... رو محاسبه کنه اما اگه هم میخوای کارت راحت شه میتونی از shamsi.dll استفاده کنی که تابعی به نام
ShamsiWeekDayName داره و میتونی ازش استفاده کنی . . .

hamid206
چهارشنبه 22 خرداد 1387, 16:46 عصر
میشه بگید از چه تابعی در ctime می تونم استفاده کنم ؟ من دیدم ولی توش نتونستم تابعی پیدا کنم که بگه مثلا mon هست یا sun و ... ؟ چون برنامه ام تو لینوکس هست هم نمی تونم از dll استفاده کنم

A_Salimi
چهارشنبه 22 خرداد 1387, 21:39 عصر
در ویژوال سی میتونی به این صورت عمل کنید :

البته من این رو تو mfc جواب گرفتم :



CTime time=CTime::GetCurrentTime();
int weekday=time.GetDayOfWeek();



الان در weekday شماره روز هفته ذخیره شده که شما با گذاشتن شرط هایی میتونید نام
روز رو هم بدست بیاورید .مثلا با switch - case