PDA

View Full Version : سوال: منظور قطعه ای از برنامه



RahimiAdel
دوشنبه 03 خرداد 1389, 12:10 عصر
سلام دوستان می خواستم منظور این قطعه برنامه رو بدونم خوشحال می شم نظر شما رو بدونم

for(i=0;i<n;i++)
for(j=0;j<n;j++)
temp=m[i][j]
m[i][j]=m[j][i]
m=[j][i]=temp;
}

saber187518
دوشنبه 03 خرداد 1389, 12:52 عصر
سلام دوست عزیز این برنامه به ظاهر داره جای سطر و ستون رو عوض میکنه.
اما اگه اتحان کنی میبینی که بعد از اجرای برنامه ماتریس هیچگونه تغییری پیدا نکرده.
شما باید شمارنده ها رو حداکثر تا نصف سطر یا ستون پیش ببری تا بتونی جای سطر و ستون رو عوض کنی.
موفق باشی

RahimiAdel
دوشنبه 03 خرداد 1389, 21:17 عصر
سلام
ممنون دوست عزیز از راهنمایت خیلی به من کمک کرد بازم ممنون:قلب::تشویق:

بانوی ایران
چهارشنبه 05 خرداد 1389, 01:14 صبح
ميشه بيتر توضيح بديد خط

m[i][j]=m=[j][i]
رو نميفهمم چرا همچين كاري كرده

saber187518
چهارشنبه 05 خرداد 1389, 02:06 صبح
با سلام
ببین دوست عزیز این رو میدونی که

M[i][j]یک درایه از ماتریس هست که این درایه در تقاطع سطر i و ستون j واقع شده.
حالا ما در این برنامه می خواهیم که درایه های سطر و ستون رو با هم عوض کنیم.
فرض کنید که ماتریس من به شکل زیر باشه


1 2 3
4 5 6
7 8 9
من میخوام برنامه ای بنویسم که این ماتریس رو به ماتریس زیر تبدیل کنه


1 4 7
2 5 8
3 6 9
یعنی اینکه دقیقا جای سطر و ستون رو عوض کنم. برای اینکار باید برنامه ای که در اولین پست این تاپیک اومده رو بنویسیم تا این عملیات انجام بشه.
البته با این تصحیح که شمارنده های حلقه باید تا نصف تعداد سطر و ستون ها پیش بره. دلیل این کار هم اینه که اگه ما از اول تا نصف برسیم تمامی درایه های ماتریس از سطری به ستونی و بالعکس تبدیل شده و حالا اگه ادامه بدیم و از نصف به سمت آخر حرکت کنیم دوباره ماتریس به حالت اولیه خودش برمیگرده.:اشتباه:
امیدوارم که مطلب جا افتاده باشه.
موفق باشی.

بانوی ایران
چهارشنبه 05 خرداد 1389, 13:37 عصر
ممنون دوست عزيز
مشكل من با
m=[j][i] من ميگم اين غلطه متاسانه كامپايلر ندارم كه چكش كنم اخه معني نميده
بايد باشه
m[i][j]=m[j][i] اما اينجا بينmو[j][i]مساوي گذاشته
منظوره من اينه كه ايا اين كاردرسته؟

saber187518
چهارشنبه 05 خرداد 1389, 15:36 عصر
با سلام
از اون لحاظ:لبخند:
100% اشتباهه و در تمامی کامپایلرها هم Error میده.
موفق باشی.

RahimiAdel
سه شنبه 11 خرداد 1389, 18:06 عصر
سلام
ببخشید دوستان اصلاحش کردم بازم ممنون:تشویق: