8 puzzle solver

منذ أسبوع

عرض العمل

الوصف

مكونات المشروع:

واجهة المستخدم (GUI):

عرض لوحة 3×3 للأرقام والمربع الفارغ باستخدام أزرار Tkinter.

أزرار للتحكم: "حل" و "خلط" لتوليد حالات مختلفة للوحة.

خوارزمية الحل A* (A-Star):

تستخدم دالة heuristic لحساب عدد البلاطات غير في أماكنها الصحيحة.

تبحث عن المسار الأمثل من حالة البداية إلى حالة الهدف.

تضمن أن اللوحة قابلة للحل عن طريق عمليات عشوائية من حالة الهدف عند الخلط.

وظائف رئيسية:

الخلط (_shuffle_board): يقوم بتحريك البلاطات بشكل عشوائي من حالة الهدف لضمان أن اللوحة قابلة للحل.

الحل (_solve_puzzle): ينفذ خوارزمية A* ويعرض خطوات الحل بطريقة متحركة في واجهة المستخدم.

تحديث اللوحة (_update_tiles): لتحديث واجهة المستخدم مع كل خطوة من خطوات الحل.

توليد الحركات الممكنة (move_checking): لتحريك البلاطات الفارغة بشكل قانوني.

تحويل اللوحة إلى Tuple (board_to_tuple): لتسهيل تخزين الحالة في مجموعة "visited" وعدم تكرارها.


التفاصيل

المشاهدات 0
المفضلة 0
القسم برمجة, تطوير المواقع و التطبيقات - اخري

حساب المستخدم

Powered By Brmja Tech

All rights reserved © kaf 2026