نه خواهش میکنم..خ لطف کردین..والا من دیگه موندم مشکلش کجاست
سلامت باشید.
مام ازین الگوریتم شما چیزی نفهمیدیم تا ببینیم برنامه تون بر چه اساسه
نه خواهش میکنم..خ لطف کردین..والا من دیگه موندم مشکلش کجاست
با سلام
بنده توضیحاتی در مورد برنامه یmazeمیخواستم.
برنامه باید بصورت تابع بازگشتی نوشته بشه
برنامه من اینطوره که آدرس یه خونه رو میگیره بعد چهار تا خونه اطرافشو بررسی میکنه که اگه دیوار نبود میتونه بره همینطور تکرار میشه تا به خونه آخر برسه و خونه هایی که رفته رو علامتگذاری میکنه که loop انفاق نیفته
ولی دست آخر همه خونه هایی که مجاز به رفتن بوده رو علامتگذاری کرده نه مسیر درست.باید چیکار کنم؟
ممنون
خب اگه ذخیره کنم که اون خونه هایی رو هم که اشتباه رفته و به دیوار برخورده رو هم ذخیره میکنه؟
میشه بیشتر توضیح بدین.کلا راه حل خودتون چیه؟
ممنون میشم
طبق این عکس اونجایی که با قرمز مشخص کردم رو باید به عنوان مسیر خروجی نشون بدهمن با برنامه شما خیلی غریبم. اصلا کارش نکردم قبلا. ولی برای راه حل شما منظورم این بود که وقتی وارد خونه ای میشه، شمارشو بریزه داخل یه آرایه.
همین!!
اگه دیوار باشه که اصلا وارد خونه ای نمیشه که بخاد شمارش وارد ارایه بشه. ولی اگه دیوار نباشه و وارد یه خونه جدید بشه، همون موقع شمارشو بریز داخل یه ارایه تا مسیر رو داشته باشی.
متوجه شدی؟
شاید من متوجه سوالت نشدم. منظورت از مسیر درست چیه؟
یعنی ممکنه که بعد از چند خونه ، به بن بست بخوره و به خروجی نرسه؟
اگه این منظورت هست که بنظرم از یه الگوریتم هوش مصنوعی استفاده کنی بهتره . اسمشو یادم رفته. تو کتاب نگاه میکنم بهت میگم. (البته اگه منظورت همینه)
طبق این عکس اونجایی که با قرمز مشخص کردم رو باید به عنوان مسیر خروجی نشون بده
ولی طبق شکل دومی همه خونه هایی که دیوار نیستنو یک کرده
چون بازگشتیه همه خونه ها رو (اونایی که دیوار نیستن)بررسی میکنه پس اگه آدرسشونو تو یه آرایه دیگ ذخیره کنه بازم کمکی نمیکنه
الگوریتمش تابع بازگشتیه؟؟من باید با اون بنویسمش
ترم چندمی شما؟
رشته نرم افزاری؟
ما توی کتاب هوش مصنوعیمون، یه همچین چیزایی داشتیم.
مثلا مسئله "هشت وزیر" یه کم مثل این مسئله شماست. که میاد دونه دونه احتمالات رو بررسی میکنه که اگه اولی نشد، میره سراغ دومی. اگه دومی نشد میره سومی. و...
بهش میگفتن "حل مسئله از طریق جستجو"...
خیلی لازم داری؟
یادمه توی مسابقات بیان بود این مسئله.
باید از یکی که هوش مصنوعیش خوبه بپرسی
بله نرم افزارم برای درس پیشرفته میخامش.پروژست باید هفته دیگه تحویلش بدم.
ممنون دوست عزیز
برم یه سرچی بکنم ان شاءالله جوابمو پیدا کنم
بازم ممنونم از راهنماییهاتون
سلامت باشید. کدوم دانشگاهید؟ چقدر سخته؟
باید راه ساده تری هم باشه ها.. فکر نکنم مسئله ای بدن که نیاز به هوش مصنوعی داشته باشه.
حالا بزار دوستان هم بیان نظرشون رو بدن شاید راه ساده تری هم بود.
با تابع بازگشتی قابله حله
و تو ساختمان داده هم باstackحل میشه.هوش مصنوعی اطلاعی ازش ندارم
من اون وسط برنامم یه چیزی میخواد که درست جواب بده ولی متاسفانه به ذهنم نمیرسه
دقیقا همینه..ولی نمیدونم چطوری بهش بگم اینکارو بکنه یه سری کارا کردم ولی هر دفعه برنامه تا وسط اجرا میشد و بعد ارورstack over flowبهم میداداها یه راهی.
حالا دقیق نمیدونم برنامه تون داره چطوری کار میکنه ولی خب مسلما وقتی به بن بست میخوره، بر میگرده دیگه. نه؟
وقتی برمیگرده، بگو خونه هایی که داره ازشون رد میشه رو دوباره نقطه بزاره که اندیس 1 نداشته باشن.
درست میشه؟
دقیقا همینه..ولی نمیدونم چطوری بهش بگم اینکارو بکنه یه سری کارا کردم ولی هر دفعه برنامه تا وسط اجرا میشد و بعد ارورstack over flowبهم میداد
خب از break point استفاده کنید و ببینید که روند اجراش چطوری هست .
البته اگه با دات نت کار میکنید.
با سلام
بنده توضیحاتی در مورد برنامه یmazeمیخواستم.
برنامه باید بصورت تابع بازگشتی نوشته بشه
برنامه من اینطوره که آدرس یه خونه رو میگیره بعد چهار تا خونه اطرافشو بررسی میکنه که اگه دیوار نبود میتونه بره همینطور تکرار میشه تا به خونه آخر برسه و خونه هایی که رفته رو علامتگذاری میکنه که loop انفاق نیفته
ولی دست آخر همه خونه هایی که مجاز به رفتن بوده رو علامتگذاری کرده نه مسیر درست.باید چیکار کنم؟
ممنون
سلامسلام
به نظرم شما باید از پشته در تابع بازگشتی تون استفاده کنید
به اینصورت که هرموقع که چهارخونه اطرافش رو بررسی می کنه و خونه های مجاز رو پیدا می کنه،همه خونه های مجاز رو در یک پشته قرار می دهید و خانه مجاز انتخابی را در یک پشته دیگر
هر موقع مسیر به بن بست خورد وبه نقطه پایان نرسید یک خونه از پشته برداشته میشه و یا به همون اصطلاح خودمونpop میشه و دوباره از پشته خونه های مجاز (که قبلا توی مسیر اون رو پرکردید)یه خونه دیگه رو انتخاب میکنه(توجه کنید که خونه انتخابی باید حتما از پشته خونه های مجازpop شودتا در صورت بن بست و برگشت،اون خونه دوباره انتخاب نشه و loop اتفاق نیفته)
به همین صورت تا انتها پیش میره تا مسیر به نقطه انتهایی برسه
حالا اون مسیر درست رو توی پشته دارید و خونه های اضافی هم که به بن بست رسیدن بین مسیر از پشته حذف شدن
این راهی بود که با تابع بازگشتی به ذهن من رسید اما راه حل های زیاد دیگه ای هم وجود داره،همینطور که دوستمون هم گفتن میشه از هوش مصنوعی هم استفاده کرد من این برنامه رو با روش Aاستار در دوران دانشجوییم نوشتم که خیلی متفاوت از تابع بازگشتی میشه
راستی از چه زبان (c یا c++?)و( IDM (?visual stadioبرای برنامه نویسی استفاده می کنید؟
درضمن حتما اگه به خطای overflow برخورد کردید برنامه تون رو خط به خط اجرا کنید تا متوجه اشتباهتون بشید.
با توجه به این که ترم دوم هستید حتما این کار رو بکنید
گاهی یه اشتباه کوچک باعث اجرانشدن برنامه میشه
موفق باشید.
به این فکر نکرده بودمامیتونی به جای پشته از آرایه استفاده کنی به همون روشی که گفتم
روش پاک کردن خونه های آرایه رو بلدی؟
اگه بلدی دقیقا مثل همون روش پشته که گفتم به جای 2پشته از2تا آرایه استفاده کن و خونه ای که به بن بست می رسه اول یه اندیس برگردون عقب(index--) بعدش خونه index+1 رو پاک کن
اگرم پاک کردن خونه آرایه رو بلد نیستی میتونی یه مقدار غیر مجاز بهش بدی مثلا اگه خونه های درست رو یک می ذاری اونا رو صفر یا هر مقدار دیگه ای که دوست داری بذار
مشکلی دیگه ای هست درخدمتم؟
سلام
ممنون از شما
مشکل اینجاست که ما هنوز پشته و اینا نخوندیم
c++_visual studio2010
دیباگ میکنم وسطش قاطی میکنه ..اصن باهام همکاری نمیکنه
یه جایی یه نفری میگفت که بازگشتیش سخته با حلقه فور و..میشه نوشتش..ولی چه جوری؟
من میخام یه جور بهش بفهمونم که وقتی به خونه ای رسید که چهارطرفش مسیر نیست خونها رو یکی یکی برگرد تا برسی به خونه ای که اطرافش مسیر هست ولی نمیدونم چطور بهش بگم
مهندس ویژوال استودیو همون دات نت هست
شما از break point استفاده کنی، بنظرم به نتایج خوبی میرسی.
آموزشش رو هم توی چندتا پست قبلتر ، توی همین تاپیک به یه نفر دیگه دادم.
میتونی فیلمشو دانلود کنی.
سلام
چطور در c++جدول رسم میکنند؟؟
و همچنین استفاده از مکان نما؟؟؟
سلام
شاید این راهی که میگم خیلی سخت باشه!!!
ولی خب راهی هست که من بلدم.
باید از توابع ترسیم خط استفاده کنی....
مربوط به کتابخانه OpenGL هست.
درس گرافیک کامپیوتریمون این چیزا بود.
مکان نما رو هم نمیدونم.
برنامه نویسی سخته مهندس....openGlسختهههههه
خدایااااا
اون که بعلههههههه ولی یادگیری openglتو یه هفته با کلی درس دیگ خیلی سخت ترههههههههههههبرنامه نویسی سخته مهندس....
Thread starter | عنوان | تالار | پاسخ ها | تاریخ |
---|---|---|---|---|
S | زبان برنامه نویسی Mini C | C++ , C | 0 | |
Z | فیلم آموزشی برنامه نویسی C به زبان فارسی | C++ , C | 0 | |
N | راهنمائی برای اجرا یک برنامه ++c | C++ , C | 1 | |
H | مشکل در نوشتن برنامه تبدیل مبنا 16 و 2 | C++ , C | 0 | |
A | برنامه نویسی با ++c در رابطه با clientserver | C++ , C | 0 |