PDA

View Full Version : مشکل در رابطه با کد تور اسب



saeid99
سه شنبه 10 دی 1387, 09:55 صبح
سلام
من دارم رو knight tour یا همون تور اسب کار کار میکنم یکمی هم برنامه نوشتم اما مشکلاتی داره ...
ممنون میشم مشکلاتش رو به کمکتون حل کنم..
البته با هاش زیاد ور رفتم ولی نشد که نشد....
کدش رو میزارم...
برنامه رو با tc++ نوشتم
مشکلش اینکه بعضی از خونه ها خالی میمونه یا به عبارتی صفر نشون میده یا اسب به اون خونه ها پیمایش نمی کنه....

saeid99
شنبه 21 دی 1387, 13:09 عصر
کسی نیست....

Saeed_m_Farid
دوشنبه 23 دی 1387, 01:34 صبح
کسی نیست....
ميشه يه كم بيشتر توضيح بدين كد تور اسب يعني چي؟ برنامه قراره چي كار بكنه؟ اينهمه if واسه چيه؟
d// اين تنها كامنتيه كه گذاشتين! اصلا d چيه ديگه؟!
فكر كنم شما يه صفحه شطرنج دارين كه ميخواين همه خونه ها رو با اسب طي كنيد ولي حداقل الگوريتمتون رو بگين: واقعا خيلي كد-ه! دركش بدون كامنت خيلي مشكله! تا كجا پيش رفتين؟ احتمال ميدين كجا مورد داشته باشه؟!
اين مثال رو كه واسه همين مساله توسط Nuno Alves : nca@bu.edu نوشته شده و از پشته استفاده كرده اگه كمكي ميكنه يه نگاهي بندازيد (بازگشتي نيست)
Solve Knights Tour Problem (http://library.thinkquest.org/C0111571/viewcode.php?cid=18)

اگه خواستين كدش رو هم ميذارم اينجا
با تشكر.

saeid99
دوشنبه 23 دی 1387, 23:40 عصر
راستش من میخوام همون برنامه حرکت اسب رو به طور ساده پیاده سازی کنم من اول اومدم یه آرایه 8*8 گرفتم و تعداد حالات هر خانه از صفحه شطرنج رو داخلش قرار دادم بعدش اومدم در نظر گرفتم که حداکثر حالت میتونه 8 تا باشه یعنی مهره اسب حداکثر 8 حرکت میتونه داشته باشه بعدش با آرایه halat و با استفاده از همون if ها تعداد حالات رو گرفتم و داخل mo ریختم بعدش اومدم از طریق حلقه کمترین حالت رو انتخاب کردم...
بعدش در if ها که کمترین مقدار رو با حرکت تطبیق میده و i و j که حکم سطر و ستون رو داره تغییر میده..

اما نمیدونم چرا بعضی خونه ها خالی میمونه....
ممنون میشم کمکم کنی این مشکل برطرف بشه..

saeid99
پنج شنبه 26 دی 1387, 17:12 عصر
کد گذاشته شده رو حذف کردم