هەموومان یاری شەتڕەانجمان کردووە، و دەزانین کە ئەسپەکە شێوازێکی جیاوازی جوڵەی هەیە لەم یارییەدا، ئەویش شێوەی جوڵەی پیتی Lە، واتە ئەسپەکە توانای هەیە دووخانە لەسەر ئاستی ئاسۆیی بڕوات و یەک خانەش بەشێوی ستوونی بەیەک جووڵە، یان بە پێچەوانەوەشەوە، ئەمەش وادەکات کە جوڵەیەکی ستراتیجی پێببەخشێت، ئەوەی لەم بابەتەیا باسی دەکەین هەر باسی جووڵەی ئەسپەکەیە، ئەویش بابەتێکی بیرکاریە پێێ دەگوترێت Knigh’t Tour، واتە گەشتی ئەسپ سوارەکە، کە داوات لێ دەکات کەوا گەشتێک بەئەسپەکە بکەیت لەسەر بۆردی شەترەنجەکە بەجۆرێک بەهەموو خانەکاندا بڕوا، واتە لە یەکێک لەخانەکان دەست پێدەکەیت پاشان دەیجووڵێنیت بۆ خانەیەکی دیکە -بێگومان هەر بەجووڵەی پیتی L- و بەردەوام دەبیت تاکو ئەسپەکە بەهەموو خانەکاندا دەجووڵێنیت، بەڵام بەمەرجێک: ئەویش ئەوەیە دووجار بەیەک خانەدا نەڕۆیت!

ئەم کارە لەوانەیە بە کرداری ئاسان نەبێت، بەڵام وەکو ڕاهێنان بەکاردێت لە بواری پرۆگراممسازی بۆ ئەوەی پرۆگراممسازەکە ڕێگەیەک بدۆزێتەوە بۆ بەدەست هێنانی گەشتێکی تەواو.

333333 11111111 222222
تۆ دەتوانیت ئەمە بە قەڵەم و کاغەزێک ئەنجام بدەیت، لە یەکێک لە خانەکان دەست پێبکە، دواتر بەگوێرەی جوڵەی ئەسپەکە ئەو خانەیەی کە بۆی دەجوڵێنی ژمارەی هەنگاوەکەی تیادا بنووسە، سەیری ئەم وێنانە بکە تاکو جوانتر تێ بگەیت:

بەم شێوەیە بەردەوام دەبیت تاکو بە هەموو خانەکاندا دەڕۆیت یان دەگەیتە خاڵێک کەتوانای جوڵەت نیە، با ئێمە لە نموونەکەی سەرەوە بەردەوام بین لە جووڵە:4444444

بینیت دوای ئەوەی کە ٣٥ جووڵەمان کرد ئەوا لە خانەی ٣٦ەوە ئەسپەکە توانای هیچ جووڵەیەکی نەماوە، مەگەر بچێتە خانەیەک کە پێشتر لێی بووە، و ٣٥ جووڵە زۆر دوورە لە گەشتێکی تەواو کە دەکاتە ٦٣ جووڵە، واتە هەر ٦٤ خانەکە بگەڕێیت، بۆیە ئێمە پێویستە جوڵەکانمان بۆ خانەیەکی گونجاو بێت بۆ ئەوەی گەشتی تەواو بەدەست بهێنین.

*بەڵام ئایە هەر بەڕاستی دەکرێت گەشتی تەواو بکرێت، واتە ٦٣ جووڵە؟
بەڵێ، لە ڕاستیدا 26,534,728,821,064 گەشتی تەواو بوونی هەیە لەسەر بۆردێكی 8×8.
*ئایە بەچی ڕێگایەک دەکرێت گەشتێکی تەواو بەدەست بهێنیت؟
ئەگەر ئێمە سەیری بۆردی شەترەنجەکە بکەین ئەوا هەموو خانەکان وەکو یەکنین، بەو مانایەی کەوا هەندێک خانە هەیە کە دەتوانین لە چەند خانەیەکی زۆرەوە پێێ بگەین و هەندێک خانە تەنها لەچەند خانەیەکی کەمەوە پێی دەگەین، بۆ نموونە خانەی H1 ئەسپەکە توانای هەیە کە لە هەردوو خانەی G3 و F2پێی بگات:

55555555555555

بەڵام خانەی D4 کە دەکەوێتە نزیکی ناوەڕاست دەکرێت لە هەشت خانەوە پێی بگەین، و خانەی دیکە هەیە کە لە (٤،٦،٣) خانەوە پێی دەگەیت، بۆیە ئێمە گەر لە خانەیەک بووین باشتر وایە کە بەرەو ئەو خانەیە بجوڵێین کە نزمترین ئەگەری ڕۆشتنی بۆی هەیە، بۆیە ئێمە هەڵدەستین بە نرخدانان بۆ هەر خانەیەک بە جۆرێک نرخی هەر خانەیەک دەکاتە ژمارەی ئەو خانانەی کە دەکرێت ئەسپەکە لێیەوە بگات پێی، وەکو لەم وێنەدا دەردەکەوێت:

66666666666

دەبینیت ئەو خانانەی کە لە ناوەڕاستن ئەگەری گەشتن پێیان زیاترە وەکو لەوانەی کە لە چێوەی بۆردەکەن،

بۆنموونە ئێستا گەر ئەسپەکە لە خانەی B3 بوو ئەوە باشترە بجوڵێت بۆ خانەی A1 کە نرخەکەی ٢ وەک لەوەی بجووڵێت بۆ خانەی D4 کە نرخەکەی ٨.

*بەکار‌هێنانی جاڤا:

ئێمە دەتوانین ئەو ڕێگایەی سەرەوە بە بەکارهێنانی کۆمپیوتەر ئەنجام بدەین، ئێمە زمانی جاڤا بەکاردێنین، من پێشتر ئەو ڕێگایەی سەرەوەم بە جاڤا نووسیوە، تۆ دەتوانی کۆدەکان لێرەوە بەدەست بهێنیت:

GitHub:

https://github.com/BrwaHussen/Knight-Tour

Google Dirve:
https://drive.google.com/file/d/0B58SdocPARqyQ3dqekppM3hZR2c/view

کۆدەکە لە دوو class پێک هاتووە:

  1. Board (class)

ئەمەیان سەرەکییە، کە هەم بۆردەکە لەگەڵ ئەسپەکەش لەخۆدەگرێت، گۆڕا و میتۆدەکانی ئەم کلاسە:

Constructorی کلاسەکە یەک دانەیە کەئەویش  Board(int row,int column)، هەردوو پارامیتەرەکە شوێنی دەستپێکردنی ئەسپەکە دیاری دەکەن، یەکەمیان ڕیزەکەی دیاری دەکات واتە لەسەر ئاستی ستوونی، دووەمیان ستوونەکەی دیاریدەکات واتە لەسەر ئاستی ئاسۆیی، دەبێت ئەم دوو ژمارەیە لەنێوان 0-7 بێت، چونکە ئێمە لەجیاتی بەکارهێنانی پیت (A-H) و ژمارە، هەردووکیمان بە ژمارە دیارییکردووە، ڕاستیەکەی ئەمە هیچ جیاوازییەک دروست ناکات، بۆنموونە خانەی A1 دەکاتە 0,0، ئێمە لەکۆتایی بابەتەکە کۆدێک دادەنێین بۆ گۆڕینی ژمارەکان بۆ شێوازی پیت.

  • move(): ئەم میتۆدە وا لە ئەسپەکە دەکات کە یەک جووڵە بکات، و جووڵەکەش بە گوێرەی ئەو ڕێگایەیە کە لەسەرەوە باسمان کرد، واتە دەڕواتە ئەو خانەیەی کە کەمترین نرخی هەیە، ئەگەر ئەسپەکە بگاتە خانەیەک کە توانای هیچ جووڵەیەکی نەبێت ئەوا هیچ ڕوونادات و لە جێی خۆی دەمێنێتەوە.
  • numberOfMoves: ئەم گۆڕاوە ژمارەی ئەو جووڵانە دیاریدەکات کە تا ئێستا ئەسپەکە کردوویەتی.
  • currentColumn, currentRow: دوو گۆڕاون کە شوێنی کاتی ئەسپەکە دیاریدەکەن، واتە ئەسپەکە لەم کاتەیا لە چی شوێنێکە.
  • showData(): ئەم میتۆدە بۆ ئەوەیە کە هەموو جووڵەی ئەسپەکان دیاریبکات، واتە تەواوی گەشتەکە، و بەم شێوەش دەردەکەوێت:

32 47 16 57 30 45 14 11

17 02 31 46 15 12 29 44

48 33 58 01 56 53 10 13

03 18 51 54 59 62 43 28

34 49 64 61 52 55 24 09

19 04 37 50 63 60 27 42

38 35 06 21 40 25 08 23

05 20 39 36 07 22 41 26

کە دەبینیت هەر خانەیەک دەردەکەوێت و ژمارەی ئەو هەنگاوەش دەردەکەوێت کە ئەسپەکە لەو خانەیە بووە، ئەو نموونەی سەرەوە گەشتێکی تەواوە.

بەڵام ئەوە بزانە کە ئەو ڕێگایەی سەرەوە مەرج نیە هەموو جارێک گەشتی تەواو بدات بەدەستەوە، بەڵکو ژمارەی هەنگاوەکان بەگوێرەی خاڵی دەستپێک دەگۆڕێت، بۆیە گەر گەشتی تەواوت بەدەست نەهێنا ئەوا خاڵێکی دەستپێکی جیاواز تاقی بکەوە.

  1. KnightTourJH2P (class)

ئەمەش کلاسی دووەمە، ئەمەیان میتۆدی main()ی تێدایە، ئەم کلاسە هەڵدەستێت بە تاقیکردنەوە و بەرجەستە کردنی تایبەتمەندییەکانی کلاسەکەی دیکە.

گەر هەنگاوی تەواوت لە دەستپێکێکدا دەست نەکەوت ئەوا دەتوانیت هەموو دەستپێکە جیاوازەکان بەهۆی ئەم کۆدەوە تاقیبکەیتەوە:

for(char i=0;i<=7;i++)
for(char j=0;j<=7;j++){
Board myBoard = new Board(i,j);
for(int n=1;n<=64;n++)
myBoard.move();
System.out.printf(“%c%d:%d\n”,i+65,j+1,myBoard.numberOfMoves);
}

ئەم کۆدە هەڵدەستێت بە تاقیکردنەوە هەر ٦٤ خانە جیاوازەکان، دواتر ژمارەی ئەو هەرنگاوانە دەنووسێت کە لەو دەستپێکەوە بە دەستی دەهێنیت، جگە لەوەش ژمارەکان دەگۆڕێت بۆ پیت، کە ئەمەش شتێکی ئاسانە، سەیری لیستی پیتەکانی ASCIIی بکە لەم وێنەیە:

7777777777777777777

و تۆش دەزانیت کەوا پیتەکانی شەتڕەنج لە A تاکو ‌Hە، لە خشتەکە دەردەکەوێت کە پیتی A ژمارە ٦٥، و بۆردەکەی ئێمە لە ٠ دەست پێدەکات، بۆ لەگەڵ ٦٥ کۆی دەکەینەوە ئەو پیتەمان دەست دەکەوێت کە دەمانەوێت، بەڵام ئەوەکەی دیکە تەنها ژمارەیە، بەڵام هی شەتڕەنج 1-8 و ئەوەی بۆردەکەی ئێمە 0-7، بۆیە کۆی یەکی بکە ئەو ژمارەیەت دەست دەکەوێت، ئەم کۆدەی کە باسمان کرد بەم شێوەیە دەنوسرێت:

System.out.printf(“%c%d:%d\n”,i+65,j+1,myBoard.numberOfMoves);

*بەرەو پێشبردنی کۆدەکە:

ئەم کۆدەی سەرەوە کاتێک ئەسپەکە تووشی خانەیەک دێت کە دوو خانە یان زیاتری لەبەردەم دایە کەهەمان نرخیان هەیە، ئەوە یەکێک لە خانەکان هەڵدەبژێرێت بە ئارەزووی خۆی، بەڵام دەکرێت کۆدەکە بەرەو پێشببرێت بەوەی گەر تووشی خانەیەکی وابوو ئەوە لە هەریەک لەخانەکانەوە سەیری خانەکانی پێشی بکات، و بڕوات بۆ ئەو خانەیەی کە دەیبات بۆ خانەیەک کە نرخەکەی کەمترە لەچاو ئەوانی تر!

ئامادەکردنی : بروا حسین

هەموو ماڵپەر و دەزگایەكی ڕاگەیاندن ئازادە لە بڵاو كردنەوەی بابەتەكانی ماڵپەری تێك ئای، بەمەرجێك ئاماژەی بە سەرچاوەكە بكات

شەیر بكە بۆ هاوڕێیانت

دەربارەی نوسەر

ماڵپەری تێك ئای ، یەكەمین و گەورەترین ماڵپەری تەكنەلۆژیە لە كوردستان و عێراق ، تیایدا چەند شارەزایەكی بواری تەكنەلۆژی خزمەتگوزاریە تەكنەلۆژیەكان وەكو هەواڵ و وانە و فێركاری بە زمانی كوردی و بە شێوەی خۆڕایی پێشكەش بە ئارەزوومەندانی تەكنەلۆژی دەكەن .

Comments are closed.