سلام....
ببینید، شما وقتی روی یکی از خونه ها کلیک میکنید، باید با خونهی خالی بغلش جابجا بشه... حالا ما دو تا سطر و ردیف میخوایم(یکی برای محل جدید خونهی خالی، یکی هم برای جناب خونه که حرکت کنه....) در حقیقت، ما برای اینکه بخوای جای سطر و ستون های دو متغییر رو عوض کنیم، به متغییر سوم نیاز داریم....
فرض کنین که r1,c1 برای خانهی مورد نظر!! و r2,c2 برای خونهی خالی کنارش هستن.... حالا اگر ما، بیایم مثلا بگیم r1=r2 , c1=c2 ، در این حالت، مقدار های خونهی خالی رو به r1,c1 دادیم، ولی دیگه مقدار های سابق رو نداریم که خونهی خالی رو منتقل کنیم... پس نیاز داریم که از یه متغییر سوم استفاده کنیم....
چرا؟ چون مقدار های r1,c1 رو میریزم توش... بعدش مقدار های جدید r1,c1 رو میگیریم... حالا تو گام سوم، میایم از متغییری که درست کردیم و مقدار r1,c1 رو توش گذاشتیم استفاده میکنیم و مقدار هاش رو به r2,c2 حا میدیم...