مشاهده نسخه کامل
: برنامه مسیریابی در ماتریس دو بعدی
سلام. من 1 برنامه ميخوام كه يك ماتريس n*nرو كه خانههاي ان 0و1 هستنديك مسير براي حركت متحرك در نظر بگيره و متحرك ما از نقطه ورود(بالا سمت چب)وارد واز هر مسير فقط يكبار عبور كند و از نقطه خروج(بايين سمت راست)خارج شود. در ماتريس يكها بمنزله راههاي باز و صفرها به منزله راههاي بسته هستند.
2-ايا ميشود هر مسير را حذاكثر 2 بار طي كرد و به نقطه خروج رسيد؟
daryaban
01-05-2006, 10:00
آیا این برنامه باید به صورت گرافیکی نوشته شود؟
نه .نيازي به گرافيكي بودنش نيست
واي يعني انقدر سوالم سخت بوده؟ يكي كمكم كنه ديگه
سلام به توابع بازگشتی به نویسی و از یه عدد خاص مثل 2 برای نشون دادن یک بار عبور استفاده کن اگه در هر بار به بن بست رسیدی برگرد و خانه قبلی رو هم تبدیل به مسیر کن و اونقدر ادامه بده که همه حالت ها رو تست کنی ...
ببخشيد ميشه يه مقدار بيشتر توضيح بدين . ممنون ميشم.
خوب فکر می کنم زیاد مشکل نیست ! خوب از یه خانه شروع می کنیم که مقدارش 1 هستش الان یه تابع بنویسید که کارش اینه که چهار جهت (اگه خواستید 8 جهت )اصلی رو بررسی می کنه 4 حالت پیش می یاد خانه صفر باشه یعنی دیوار هستش پس خانه بعدی رو بررسی می کنه مثلا ساعت وار حرکت می کنی (اولی سمت بالا بعد راست بعد پایینی و بعد خانه سمت چپ ) اگه 1 بود یعنی می تونی به اونجا بری پس محتویات خانه فعلی رو که 1 هستش به 2 تغییر بده تا بعدا بفهمی یه بار ازش رد شده و همان تابع را برای خونه جدید فراخوانی کن و حتمال 3 اینکه به عدد 2 مواجه بشی که در این حالت بازم خونه بعدی رو بررسی کن اگه همه خونه ها بررسی شد و همش بسته بود یعنی به بن بست رسیدی و باید برگردی دیگه لازم نیست محتویات این خونه رو 1 بکنی چون معلومه که به جایی راه نداره پس اگه 1 بکنی ممکنه دوباره بیایی یه جای بن بست !! حالا تابع رو تموم کن و برگرد به یه تابع بالاتر یعنی به خونه بعدی مثلا در C بنویسی (return ) و همینطور ادامه بده آخرین حالت اینه که به خط پایان بررسی اگه اینطوری نشد یعنی هیچ راهی نیست ....
مشکل اصل کار اینه ممکنه یک مسیری رو طی کنه که تهش بمبست باشه اونوقت باید برگرده
هوش مصنوعیش مشکله
خوب اگه از تابع بازگشتی استفاده کنه بر می گرده . در ثانی فکر نمی کنم به این بگن هوش مصنوعی . یه مثال راحت هستش که تو دانشگاه واسه برنامه نویسی 1 مطرح می شه !!!
خوب فکر می کنم زیاد مشکل نیست ! خوب از یه خانه شروع می کنیم که مقدارش 1 هستش الان یه تابع بنویسید که کارش اینه که چهار جهت (اگه خواستید 8 جهت )اصلی رو بررسی می کنه 4 حالت پیش می یاد خانه صفر باشه یعنی دیوار هستش پس خانه بعدی رو بررسی می کنه مثلا ساعت وار حرکت می کنی (اولی سمت بالا بعد راست بعد پایینی و بعد خانه سمت چپ ) اگه 1 بود یعنی می تونی به اونجا بری پس محتویات خانه فعلی رو که 1 هستش به 2 تغییر بده تا بعدا بفهمی یه بار ازش رد شده و همان تابع را برای خونه جدید فراخوانی کن و حتمال 3 اینکه به عدد 2 مواجه بشی که در این حالت بازم خونه بعدی رو بررسی کن اگه همه خونه ها بررسی شد و همش بسته بود یعنی به بن بست رسیدی و باید برگردی دیگه لازم نیست محتویات این خونه رو 1 بکنی چون معلومه که به جایی راه نداره پس اگه 1 بکنی ممکنه دوباره بیایی یه جای بن بست !! حالا تابع رو تموم کن و برگرد به یه تابع بالاتر یعنی به خونه بعدی مثلا در C بنویسی (return ) و همینطور ادامه بده آخرین حالت اینه که به خط پایان بررسی اگه اینطوری نشد یعنی هیچ راهی نیست ....
مرسي دوست عزيز.لطف كرديد.
سلام
ببخشید من یک برنامه داشتم یک نفر لطف کنه به زبان c بنویسه
رنامه اي بنويسيد که :
1. مشخصات فردي و تحصيلي دانشجو را دريافت نموده و در فايلي ذخيره نمايد(نام – نام خانوادگي – شماره دانشجوئي – رشته تحصيلي – مقطع – نام پدر – شماره شناسنامه )
2. براي يک ترم مشخص (مثلا 842) براي دانشجو تعدادي درس به همراه تعداد واحد (عملي ونظري) انتخاب نموده و نمره دروس ثبت شود. (در يک فايل )
3. از ورودي شماره دانشجوئي دانشجو درخواست شود و براساس اطلاعت ذخيره شده در فايلها کارنامه دانشجو در يک فرم دلخواه نمايش داده شود.
a. توضيحات : تعداد دانشجويان کمتر از 10 نفر نباشد.
b. هر دانشجو نبايد کمتر از 12 واحد انتخاب نمايد
c. برنامه در موقع لزوم با درخواست کاربر به اتمام برسد.(منو لازم نيست با استفاده از دستور CASE اين کار صورت گيرد.
سلام این جواب اولین برنامه خواسته شده هست یعنی مسیر یابی من با پایتون نوشتم نمی دونم به دردتون می خوره یا نه !!
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اینم خروجی :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
vBulletin , Copyright ©2000-2024, Jelsoft Enterprises Ltd.