تبلیغات
تبلیغات متنی
محبوبترینها
ساقدوش کیست ؟ | وظیفه ساقدوش در مراسم عقد و عروسی چیست ؟
قایقسواری تالاب انزلی؛ تجربهای متفاوت با چاشنی تخفیف
چگونه ویزای توریستی فرانسه را بگیریم؟
معرفی و فروش بوته گرافیتی ریخته گری
بهترین بروکر برای معاملات فارکس در سال 2024
تجربه رانندگی با لندکروز در جزیره قشم؛ لوکسترین انتخاب
اکسپرتاپ: 10 شغل پردرآمد برای مهاجران کاری در کانادا
صفحه اول
آرشیو مطالب
ورود/عضویت
هواشناسی
قیمت طلا سکه و ارز
قیمت خودرو
مطالب در سایت شما
تبادل لینک
ارتباط با ما
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
آمار وبسایت
تعداد کل بازدیدها :
1816512290
ّبرنامه آموزشی: پیدا کردن مسیر -
واضح آرشیو وب فارسی:سایت ریسک: t=41800">ّبرنامه آموزشی: پیدا کردن مسیر zfarhad 2003 12 آبان 1384, 00:07>از اینکه بالاخره این بخش از انجمن راه افتاد خوشحال شدم ولی به نظر می رسه که دوستان دیگه اشتیاق گذشته رو برای ادامه کار ندارن. > >من دو سه روز است که درگیر حل یک مسئله توی c++ هستم که مربوط به پیدا کردن مسیر درست حرکت است. درست مثل اون معماهایی که بچگی ها حل می کردین و مثلا خرگوشه به هویج می رسید. > >توی این مسئله 1 به منزله دیواره و 0 به منزله مسیر باز برای حرکته. مثلا توی داده های زیر مسیر حرکت رو مشخص می کنم. > >0 0 1 0 >0 1 0 1 >0 1 1 0 >1 0 1 1 >0 1 1 1 حالا من سعی کردم کمی تا قسمتی این برنامه رو شبیه سازی کنم ولی خوب کد من یک اشکال کوچیک داره که توی شرایط خاصی ایجاد می شه. فایل مربوط رو ضمیمه کردم. حالا پیدا کردن اشکال و رفع اون هم با شما؟ اصلا نگاه کنین ببنین از برنامه سردر می یارین یا اینکه توضیحش بدم. تقریبا 9 ماه می شد که اصلا توی محیط C++ نرفته بودم یکم سخت بود اوضاع رو جمع و جور کنم. شاید کدم اشکالاتی داشته باشه. در کل بیاین سعی کنین این مسئله رو با بهترین و بهینه ترین راه حل به جواب برسونیم. saalek110 12 آبان 1384, 16:35من دانلود كردم. يك نگاهي مي كنم . بعد اطلاع مي دهم . . stranger_in_rain 12 آبان 1384, 21:11خبرشو میدم :) سرم درد میکنه برا این کارا :d saalek110 13 آبان 1384, 00:09اگه بيشتر توضيح بديد، من هم يك كمي ياد مي گيرم. مثلا بگيد برنامه الان چكار مي كنه و بايد بعد اصلا چكار كنه. پارتيشنهاي برنامه اتان را مشخص كنيد و بگيد هر قسمت چه كار مي كند و با قسمتهاي ديگر چطور ارتباط برقرار مي كنه. اگه هم يك كم آموزشي كنيد قضيه را كه عاليه. مثلا توابع بكار رفته در برنامه اتان را تعريف كنيد و طرز بكار بردن هر يك را بگيد. كلا بگم، من عيب رفع كن نيستم. و اين وسط مي خواهم يك چيزايي ياد بگيرم. ولي اگر توانستم هم دريغ نمي كنم. zfarhad 2003 13 آبان 1384, 01:34در مورد اشکال برنامه به نظرم اگه نگم خودتون پیدا کنین بهتره چون حداقل سعی می کنین تا از منطق برنامه سردربیارین. در مورد ساختار برنامه ام چشم. الان بدجوری خوابم می یاد ساعت 2.30 نصف شبه فردا صبح در اولین فرصت که کانکت شدم می یام برنامه رو جز به جز توضیح می دم. zfarhad 2003 15 آبان 1384, 00:32خوب همونطور که قول داده بودم این یه توضیح مختصر در مورد ساختار برنامه: اول از همه یه آرایه دوبعدی به اسم Table تعریف می کنم که همون داده های اولیه یا نقشه ما رو شامل می شه. هیچ محدودیتی در تعداد سطر یا ستون نداره یعنی به هر بزرگی و کوچیکی که خواست می تونه باشه. بعد یه تابع خیلی جمع و جور داریم به اسم isneighbour که بررسی می کنه ببینه آیا دوتا صفر که بهش داده می شه در کنار هم هستن یا نه (همسایه همند یا نه). یه کلاس کلی هم به اسم node داریم که تقریبا کل بار برنامه روی این کلاسه است. این کلاس در واقع نماینده یک صفر است وقتی من داده ها رو بررسی می کنم هرجا یه صفر پیدا کردم یه object از این کلاس می سازم. این کلاس همونطور که می بینین یه xو y داره که مختصات صفر رو نگه می داره. که آرایه به اسم list داره که از نوع اشاره گره و به تمامی صفرهایی که در همسایگی این صفر ما هستند اشاره می کنه. یعنی اگه یه صفر داشته باشیم که دوروبرش 3 تا صفر باشه توی این آرایه سه مقدار غیر NULL داریم که به این صفرهای همسایه اشاره می کنن. متغیر آخری هم که در کلاس است num تعداد همسایه های ما رو نگهداری می کنه. نوبت می رسه به توابع داخلی این کلاس: چهارتا تابع اول که کار خاصی رو نمی کنن خیلی ساده هستن. تابع پنجم یعنی add در واقع وقتی من یه همسایه پیدا کردم با استفاده از این تابع آدرس اون رو به لیست خودمون اضافه می کنم و تابع del هم درست برعکس این یعنی از لیست هر همسایه ای رو که خواستم حذف می کنم. و اما foundinlist این تابع بررسی می کنه تا ببینه آیا اون نقطه یا صفری که بهش داده می شه توی لیست است یا نه اگه توی لیست باشه محل اونو برمی گردونه واگر نبود 0 رو بیرون می ده. دو تابع آخر هم که getnode و bestpath هستند قبلا یه تابع بودن که مجبور شدم از هم جداشون کنم ولی اگه با هم ادغام بشن هیچ فرقی به حالمون نمی کنه. getnode در واقع آخرین همسایه که در لیست است رو برمی گردونه و bestpath با یه محاسبه ساده بهترین همسایه رو برمی گردونه. کلاس کارمون به همین راحتی تموم شد فکر نکنم زیاد نیازی به فکر کردن داشته باشه. اما در خود برنامه اول می یام برای اینکه محدودیتی در داده نداشته باشیم با محاسباتی تعداد سطر و ستون و ههچنین تعداد صفرهای موجود در میان داده ها رو پیدا می کنم. بعد می یام که آرایه به نام list به اندازه اون صفرهایی که داریم درست می کنم و با دوتا For یکی یکی این خانه های آرایه رو که نماینده صفرهای ما هستن وبا مختصات دهی مشخص می کنم. بعد از این مرحله نوبت می رسه به انجام محاسبات منطقی رو داده هامون تا مسیر رو از میان این صفرها پیدا کنیم. در دوتا for بعدی می یان کلیه همسایه های صفرهای موجود در list رو پیدا کرده و به اونا اضافه می کنم. بعد توی یه دونه while جالب میام ار میان این صفرها و همسایه هاشون که هستن اونهایی رو که مسیر انحرافی هستن پیدا کرده و حذف می کنم . این بخش از برنامه رو من خودم که خوشم اومر کلا اون صفرهایی که اصلا توی مسیر نیستن و ما رو منحرف می کنن از میان می بر و این کار رو با صفر کردن num که تعداد همسایه هاست می کنه یعنی وقتی صفر هیچ همسایه ای نداشته باشه دیگه توی هیچ محاسبه ای شرکت نمی کنه. بعدش می یام توی یه while کمی تا نسبتی پیچیده مسیر رو پیدا می کنم. این قسمت رو خودم هم قبول دارم که یکم پیچیده شده یعنی الان که خودم هم نگاه می کنم بدجوری سرم گیج می ره. خدا می ده این قسمت کد چه عذابی بهم داده تا نوشته بشه. خدا سر هیچ کس نیاره. وقتی برنامه نااهل باشه دیگه وای به حال برنامه نویس که مجبور به هر التماس و خواهشی شده ازش بخواد که حل شه. ولی خداییش وقتی حل بشه خیلی حال می ده. برگردیم سر برنامه توی این while پیچیده که گفتم می یام بررسی می کنم از اول مسیر که مشخصه جلو می ره اگه صفری یه همسایه داشت خوب مسیر درسته بریم جلو اگه چندتا همسایه داشت یعنی ما چندتا انتخاب داریم باید یکی رو که بهترین است انتخاب کنیم یعنی همون bestpath که بهترین همسایه رو انتخاب می کنه. این کار رو یعنی پیمایش مسیر رو اونقدر ادامه می دیم که یا به صفری برسیم که دیگه هیچ همسایه نداشته باشه یا به همون نقطه انتهایی مسیر برسیم. (البته توجه کنین من وقتی از یک نقطه می گذرم دیگه می یان کلیه راههای برگشت به اون رو پاک می کنم تا احیانا به اشتباه مسیر رو برنگردیم) بالاخره تموم شد حالا می یام با خوشحالی مسیر رو چاپ می کنم. امتحانش می کنم با داده های مختلف همه خوب جواب می دن برنامه خیلی باهوشه بعضی وقتها بهترین راه یعنی کوتاهترین رو انتخاب می کنه. خیلی هم سبکه یعنی بار اضافی رو سیستم تحمیل نمی کنه. وای یه لحظه وایسین برنامه داره بعضی وقتها ضدحال می زنه . نه دیگه اینجوری نکن. ؟؟؟ ؟ ؟ ؟ ؟ ؟ ؟ ؟ امیدوارم مشکل برنامه رو لو نداده باشم چون می خوام حداقل یکم فسفر بسوزونین تا به نتیجه ای برسیم. فکر کنم توضیحات کامله( البته مختصر نشد) اگه باز توی بخشی از برنامه گیر کردین بگین تا توضیح بدم. zfarhad 2003 22 آبان 1384, 22:41هیچ کی نتونست اشکال برنامه رو پیدا کنه. حداقل بیاین بقین تا خودم بگم. به خدا اصلا سخت نیست اشکالش خیلی تابلویه. stranger_in_rain 23 آبان 1384, 00:10من انقدر تو این هفته سرم شلوغ بوده که وقت نکردم نگاهش کنم، کلی امتحان دارم. یک مقدار دیگه وقت بده :d zfarhad 2003 24 آبان 1384, 16:41باشه. من که عجله ای ندارم. گفتم اگه خواستین خودم اشکالش رو می گم. mr_mobile 10 ارديبهشت 1387, 11:56برنامه اجرا میشه ولی بعد هر چی بزنی خارج میشه میشه کاملش کنید من به این برنامه خیلی نیاز دارم
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 804]
صفحات پیشنهادی
ّبرنامه آموزشی: پیدا کردن مسیر -
t=41800">ّبرنامه آموزشی: پیدا کردن مسیر zfarhad 2003 12 آبان 1384, 00:07>از اینکه بالاخره این بخش از انجمن راه افتاد خوشحال شدم ولی به نظر می رسه که دوستان دیگه ...
t=41800">ّبرنامه آموزشی: پیدا کردن مسیر zfarhad 2003 12 آبان 1384, 00:07>از اینکه بالاخره این بخش از انجمن راه افتاد خوشحال شدم ولی به نظر می رسه که دوستان دیگه ...
آموزش نحوه پیدا کردن lock code فراموش شده گوشی های ...
آموزش نحوه پیدا کردن lock code فراموش شده گوشی های سری60ورژن3(100% ... به مسیر نصب برنامه رفته و فایلی که هم اسم شماره سریال گوشیتون هست رو با یکی از ...
آموزش نحوه پیدا کردن lock code فراموش شده گوشی های سری60ورژن3(100% ... به مسیر نصب برنامه رفته و فایلی که هم اسم شماره سریال گوشیتون هست رو با یکی از ...
آموزش ساین کردن نرم افزار های نوکیا
آموزش ساین کردن نرم افزار های نوکیا-آموزش ساین کردن نرم افزار های نوکیا این ... Pub ID Available ، گزینه No را انتخاب کرده و در کادر Private Key File مسیر پیشفرض ... گزینه Add کلیک کرده تا تمامی موارد به کادر سمت راست برنامه انتقال پیدا کرده و ...
آموزش ساین کردن نرم افزار های نوکیا-آموزش ساین کردن نرم افزار های نوکیا این ... Pub ID Available ، گزینه No را انتخاب کرده و در کادر Private Key File مسیر پیشفرض ... گزینه Add کلیک کرده تا تمامی موارد به کادر سمت راست برنامه انتقال پیدا کرده و ...
آموزش کالیبره کردن نقشه ( برای Gps )
آموزش کالیبره کردن نقشه ( برای Gps )-View Full Version : آموزش کالیبره کردن نقشه ... به فاروم های دیگه مراجعه کردم و در سایت موبایلستان مطلب زیر رو پیدا کردم و به نقل ... رو بریزید تو گوشی در مسیر E:datasmartgpsconmaps و برنامه رو اجرا کنید.
آموزش کالیبره کردن نقشه ( برای Gps )-View Full Version : آموزش کالیبره کردن نقشه ... به فاروم های دیگه مراجعه کردم و در سایت موبایلستان مطلب زیر رو پیدا کردم و به نقل ... رو بریزید تو گوشی در مسیر E:datasmartgpsconmaps و برنامه رو اجرا کنید.
آموزش هک کردن کادر محاوره ای Turn Off Computer -
آموزش هک کردن کادر محاوره ای Turn Off Computer --آموزش هک کردن کادر محاوره ای Turn Off ... به مسیر زیر بروید : C:WindowsSystem32 فایلی را با نام msgina.dll پیدا ...
آموزش هک کردن کادر محاوره ای Turn Off Computer --آموزش هک کردن کادر محاوره ای Turn Off ... به مسیر زیر بروید : C:WindowsSystem32 فایلی را با نام msgina.dll پیدا ...
آموزش مخفی کردن همه یا تعدادی از فایل های یک پوشه در گوشی های ...
آموزش مخفی کردن همه یا تعدادی از فایل های یک پوشه در گوشی های ... این یه تیکش خیلی حال گیریه اگه واسه گوشی های سونی اریکون راهی پیدا کردی به ما هم یاد بده ! ... فقط کافیه بعد از نصب برنامه از قسمت Setting مسیر فولدر عکس و ویدئو رو بدیم.
آموزش مخفی کردن همه یا تعدادی از فایل های یک پوشه در گوشی های ... این یه تیکش خیلی حال گیریه اگه واسه گوشی های سونی اریکون راهی پیدا کردی به ما هم یاد بده ! ... فقط کافیه بعد از نصب برنامه از قسمت Setting مسیر فولدر عکس و ویدئو رو بدیم.
آموزش ساخت بازی های اکشن با نرم افزار fps creator -
آموزش ساخت بازی های اکشن با نرم افزار fps creator --آموزش ساخت بازی های اکشن با نرم افزار fps creator ... شما حتما شروع کن علاقه مند پیدا میشه . ... تمام افرادي كه با اين نرم افزار كار مي كردن پشيمون شدن :d maxpain 23 مرداد 1386, 11:38mostafa جان سلام ...
آموزش ساخت بازی های اکشن با نرم افزار fps creator --آموزش ساخت بازی های اکشن با نرم افزار fps creator ... شما حتما شروع کن علاقه مند پیدا میشه . ... تمام افرادي كه با اين نرم افزار كار مي كردن پشيمون شدن :d maxpain 23 مرداد 1386, 11:38mostafa جان سلام ...
آموزش بخش Project Options نرم افزار AutoPlay Menu Builder -
آموزش بخش Project Options نرم افزار AutoPlay Menu Builder --آموزش بخش Project ... متاسفانه فرصت ویرایش پیدا نکردم از اشکالات دستوری و املئی موجود در متن عذر ... Startup Page معیین کردن صفحه ای که هنگام آغاز به کار برنامه به نمایش در خواهد آمد. ... در قسمت File Name مسیر فایل مورد نظر خود را باید قرار دهید همچنین با قرار دادن ...
آموزش بخش Project Options نرم افزار AutoPlay Menu Builder --آموزش بخش Project ... متاسفانه فرصت ویرایش پیدا نکردم از اشکالات دستوری و املئی موجود در متن عذر ... Startup Page معیین کردن صفحه ای که هنگام آغاز به کار برنامه به نمایش در خواهد آمد. ... در قسمت File Name مسیر فایل مورد نظر خود را باید قرار دهید همچنین با قرار دادن ...
NetSupport School Professional نرم افزار آموزشی کلاس درس ...
NetSupport School نرم افزاری برای مدیریت و اداره کردن کلاس های آموزشی تحت رایانه ... روی کامپیوترهایشان انجام داده و دانش آموزان را در مسیر وظیفه محول شده به آنان نگه دارد. ... 8.5 این مشکل حل شده و سرعت نمایش به شکل چشم گیری افزایش پیدا کرده است ...
NetSupport School نرم افزاری برای مدیریت و اداره کردن کلاس های آموزشی تحت رایانه ... روی کامپیوترهایشان انجام داده و دانش آموزان را در مسیر وظیفه محول شده به آنان نگه دارد. ... 8.5 این مشکل حل شده و سرعت نمایش به شکل چشم گیری افزایش پیدا کرده است ...
آموزش نرم افزار Ulead Video Studio
View Full Version : آموزش نرم افزار Ulead Video Studio Mohammad ... چک باکس دوم برای فعال یا غیرفعال کردن Relink در آغاز برنامه است( در قسمت بعدی با آن اشاره خواهیم ... با اجرای فرمان Relink ما می توانیم اگر به هر علتی نرم افزار مسیر یکی از .... قرار بگیرد با استفاده از نمایش سریع Timeline پیدا کرده سپس روی نماد قیچی که در ...
View Full Version : آموزش نرم افزار Ulead Video Studio Mohammad ... چک باکس دوم برای فعال یا غیرفعال کردن Relink در آغاز برنامه است( در قسمت بعدی با آن اشاره خواهیم ... با اجرای فرمان Relink ما می توانیم اگر به هر علتی نرم افزار مسیر یکی از .... قرار بگیرد با استفاده از نمایش سریع Timeline پیدا کرده سپس روی نماد قیچی که در ...
-
گوناگون
پربازدیدترینها