حل لغز خشبي مكون من 25 قطعة باستخدام Haskell: الجزء الأول

2025-09-20

تلقى الكاتب لغزًا ثلاثي الأبعاد صعبًا يتكون من 25 قطعة خشبية متطابقة، وبعد محاولات عديدة لحله يدويًا، قرر استخدام قوة لغة البرمجة Haskell. هذه هي المقالة الأولى من سلسلة مكونة من مقالتين تركز على نمذجة المشكلة. يقوم الكاتب بنمذجة الفضاء كشبكة ثلاثية الأبعاد، باستخدام المتجهات لتمثيل المواقع وتحديد هياكل البيانات لقطعة واحدة وترتيبها في الفضاء. تُفصّل المقالة كيفية استخدام الجبر الخطي وميزات Haskell لتمثيل دورات وترجمات القطع، مما ينتج عنه قائمة مرشحة لجميع الترتيبات الممكنة. تنتهي المقالة بمشهد مثير، تاركة حل العثور على الترتيب الصحيح من بين المرشحين للجزء الثاني.

اقرأ المزيد