المشاركات

عرض المشاركات من مايو, ٢٠١٣

برنامج تك-تاك-تو في ++C

صورة
برنامج تك-تاك-تو هذه لعبة من ألعاب التسلية الكلاسيكية , نختتم بها منهجنا في تدريس لغة السي ++ ونضعك به علي مدخل الذكاء الاصطناعي حيث يقوم البرنامج بتحليل الموقف واختيار أفض حركة . وبلغة البرمجة الكائنية , فهو تطبيق أخر لفكرة المعاودة فكل كائن يحتوي علي دالة تخلق كائنا جديدا من نفس فئته . وتلعب هذه اللعبة الشهيرة بالورقة والقلم , حيث يتبادل الخصمان وضع حرفي O, X علي تسعة مربعات كما هو مبين في الشكل والفائز هو من يستطيع ترتيب الحرف الخص به في خط مستقيم . شكل دور تقليدي للعبة ويدور الدور بين اللاعب والجهاز بطريقة تفاعلية بواسطة رسائل تظهر علي الشاشة تحدد الخطوة التالية لك خصم , كما هو مبين في الشكل شكل موقف من مواقف اللعبة ولعلك تظن أن هذه اللعبة أبسط من أن تقدم كبرنامج نحلله , ولكن البرنامج يحوي في الواقع الأفكار الرئيسية للبرامج الأكثر تطورا كبرامج لعبة الشطرنج مثلا , فالبرنامج يفكر مسبقا في كافة الاحتمالات النابعة عن موقف معين وأيها أكثر احتمالا لتحقيق النصر في النهاية . وإليك صياغة البرنامج Tictac.cpp // tictac.cpp // tic-tac-toe game // UCS Laboratories

برنامج الحياة في ++C

صورة
برنامج الحياة وضع هذا النوع من البرنامج الرياضي جون كونواي من جامعة كامبريدج لتمثيل مستعمرات الكائنات المجهرية . وتمثل كل خلية حية علي الشاشة بمربع في مصفوفة ثنائية وتعيش الخلايا وتتكاثر بناء علي قواعد بسيطة . ونستخدم في برنامجنا المحارف الرسومية وحتي نضاعف عدد الخلايا فإننا نعتبر أن كل موضع علي الشاشة يتسع لخليتين , فإذا كانت الخلية العلوية فقط هي الحية , استخدم المحرف '\xDF' والمعرف بالثابت bot , وفي حالة كون الخليتين حيتين معا , استخدم المحرف '\xDB' المعرف بالثابت both , وفي حالة كونهما ميتين معا , استخدم المحرف '\X20' المعرف الثابت none , كما يظهر في الشكل . وعلي ذلك فالشاشة التي تتضمن 25 صفا تعتبر كما لو كانت تحتوي علي 50 صفا .   قواعد الحياة تكون الخلية إما حية (مربع أبيض) أو ميتة (مربع أسود , أو فارغ) . لكل خلية ثمانية جيران , يمين وشمال , اعلي وأسفل , وأربعة في الأوتار . والقواعد كالتالي : - الخلية الميتة تولد (تصحح حية) إذا جاورها ثلاثة جيران بالضبط . - الخلية الحية التي يجاورها خليتان حيتان أو ثلاثة خلايا حية تظل علي قيد الحياة . - تف

برنامج باقة الزهور في ++C

صورة
يحتوي هذا المقال علي ثلاثة برامج , تجمع بين البهجة وبين المستوي المتقدم الذي يلقي مزيدا من الضوء علي ما للغة السي ++ والبرمجة الكائنية من إمكانيات . البرنامج الأول يستخدم فكرة "الفراكتال fractals " لإنتاج زهرة تتفتح بألوان زاهية , والثاني برنامج باسم "لعبة الحياة" يمثل نموذجا لكائن مجهري يتكاثر , أما البرنامج الثالث فهي اللعبة الشهيرة باسم ''Tic-Tac-Toc'' والتي نعرفها باسم "إكس-أو" . يستخدم البرنامج الأول إمكانيات الدوال الرسومية للغة السي++ , أما البرنامجان الأخران فيستخدمان المحارف الرسومية لجدول الأسكي . برنامج باقة الزهور فكرة "الفراكتال" تتلخص فكرة "الفراكتال" في إنتاج تشكيلات ذاتية الاستنساخ من شكل أولي , أي تستطيع أن تكرر نفسها مرات ومرات بناء علي صيغة رياضية معينة . وأفضل طريقة لفهم هذا الأسلوب من إخراج الرسومات الحاسوبية هو أعطاء مثال لها , والمثال الذي نقدمه يخرج باقة تتفتح بزهور حمراء اللون وفي كل مرة تشغيل فيها البرنامج , تحصل علي باقة جديدة شرح البرنامج النمط الأولي في برنامجنا غاية في البساطة

القوائم و الدوال في ++C

صورة
القوائم أشهر أليات تخزين للبيانات بعد المصفوفات . وهي تتيح لك تخزين البيانات دون أرقام دليلية ولا تضطرك لتحديد سعتها . فكما رأينا في أمثلة سابقة فإن القوائم (والتي توصف أيضا بالمترابطة ) تحتوي علي مؤشرات للعناصر المتسلسلة وبينما تعتبر القوائم غير مريحة في عملية البحث , حيث تتطلب أن يكون تتابعيا من بدايتها إلا أنها أنسب في سهولة الإضافة والمحو فكل ما في الأمر تغيير في بعض المؤشرات . و يضم جدول دوال الفئة TListImp التي تتيح استخدامها .   جدول دوال الفئة TListImp الدالة الغرض منها Add إضافة عنصر لمقدمة القائمة Detach محو عنصر من مقدمة القائمة FirstThat تعيد مؤشرا لأول كائن يحقق شرطا Flush إزالة كافة العناصر