PDA

نسخه کامل مشاهده نسخه کامل : ترسیم لاک پشتی



jaho
19-02-2010, 19:36
دوستان خوبم سلام
یه صفحه مثل صفحه ی شطرنج درنظر بگیرید که بوسیله ی یه آرایه ی دوبعدی خونه های اون رو مشخص کردیم
برای حرکت بین خونه های اون هم باید فقط از حرکت به راست و چپ استفاده کنیم
مثلا با واردن کردن عدد یا کارکتر مخصوص به گردش به راست کدی وجود داشته باشه که این جا به جایی رو انجام بده در واقع باید مقدار عددی مربوط به سطر یا ستون تغییر کنه
اما این تغییر با توجه به اینکه مکان مورد نظر در هر لحظه کجاست تفاوت داره
مثلا
for(int i=0;i<20;i++)

for(int j=0;j<20;j++)
-->اینگونه در حال حرکت باشیم برای حرکت به راست باید i++
<--اینگونه در حال حرکت باشیم برای حرکت به راست باید i--
اگر در حال حرکت در جهت عمودی باشیم که jتغییر میکند
مشکل من اینه که در هر لحظه قابل پیش بینی نیست که در چه حالتی هستیم و نمیشه کد خاصی رو نوشت


امیدوارم متوجه توضیحاتم شده باشید!

sin2x=2sinxcosx
20-02-2010, 01:02
میشه یکم بیشتر .............. ؟
هم نصفه شبه و هم یکم روی سوال :34: یه .
من نگرفتم .

jaho
20-02-2010, 11:34
میشه یکم بیشتر .............. ؟
هم نصفه شبه و هم یکم روی سوال :34: یه .
من نگرفتم .
مطمئن بودم کسی از توضیحات قشنگم سردرنمیاره!:41:
اصلا فرض کنید که صفحه ای مثل صفحه ی شطرنج داریم که هر خونه ی اون مختصات خاصی داره (مثل یک آرایه دوبعدی)و میخاهیم توی این صفحه حرکت کنیم سه تا فرمان گردش به راست و گردش به چپ و حرکت به جلو رو داریم که بوسیله ی وارد کردن یه کاراکتر خاصی انجام میشه...حالا این حرکت به راست و چپ رو چطور می نویسید؟

sin2x=2sinxcosx
20-02-2010, 16:29
آهان ..........
حالا فهمیدم اون بالا چی گفتین .
مثلا یه کاراکتر به نام ch تعریف کردین که اگه r باشه یعنی right و اگه l باشه یعنی left میره . تو شرط هم این جوری تقریبا :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

jaho
20-02-2010, 20:51
.


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
این قسمتش یعنی چی؟

sin2x=2sinxcosx
20-02-2010, 21:23
هیچی دیگه . یعنی اگه متغیر ch برابر r باشه i رو ++ کن و در غیر اینصورت -- کن .

jaho
20-02-2010, 23:24
هیچی دیگه . یعنی اگه متغیر ch برابر r باشه i رو ++ کن و در غیر اینصورت -- کن .
آخه این که همه جا جواب نمیده...شما یه محل n*n در نظر بگیرید فرض کنید که توی ردیف اول به سمت جلو میریم با فرمان سمت راست بایدi اضافه بشه اما وقتی عمودی پایین میاد برای رفتن به راست باید از j کم بشه(ستون منظورمه)
امیدوارم متوجه شده باشید!

sin2x=2sinxcosx
21-02-2010, 22:07
خب برا اون یکی حلقه تونم یه شرط اینجوری بذارین دیگه .
اگه i تعداد ستون ها و j تعداد سطرها باشه ، برا رفتن به راست i باید ++ و j ثابت باشه . اگه چپ می ریم i باید -- و j ثابت باشه .
اگه پایین میریم j باید ++ و i ثابت باشه و بالا هم -- میشه .
مورب هم که هر دو تغییر می کنن .

jaho
22-02-2010, 21:10
خب برا اون یکی حلقه تونم یه شرط اینجوری بذارین دیگه .
اگه i تعداد ستون ها و j تعداد سطرها باشه ، برا رفتن به راست i باید ++ و j ثابت باشه . اگه چپ می ریم i باید -- و j ثابت باشه .
اگه پایین میریم j باید ++ و i ثابت باشه و بالا هم -- میشه .
مورب هم که هر دو تغییر می کنن .
خب مشکل منم همینه دیگه!:41:حرکت به سمت بالا و پایین نداره یعنی ظاهرا صفحه رو مسطح درنظر گرفته و فقط حرکت راستگرد و چپ گرد داریم!

sin2x=2sinxcosx
22-02-2010, 22:13
من نمی فهمم اصلا ........... :41:

femme
27-05-2010, 11:52
سلام چرا از gotoxy استفاده نميكنيد؟