-1مقدمة: رغم أن الحاسب الالكتروني يتميز بقدرته على إنجاز العمليات الحسابية حسب الأوامر و التعليمات المعطاة له بسرعة فائقة و بدقة متناهية و كذلك بإمكانياته الكبيرة في حفظ المعلومات الواسعة و المختلفة التي يعجز الإنسان عن حفظها و استعادتها باستعمال ذاكرته العادية. فهو يعجز عن أن يقوم بشكل ذاتي بحل أي مسألة مهما كانت بسيطة، أي أن عمله ينحصر في إنجاز الحلول للمسائل التي تبرمج له بشكل صحيح يتوافق مع الأسس العلمية الصحيحة التي تعتد عليها هذه الحلول.
لذا سوف نستعرض في هذا الفصل الخطوات الضرورية اللازمة لحل المسائل باستخدام الحاسب الالكتروني وكذلك توضيحاً مفصلاً لمفهوم الخوارزميات و خرائط سير العمليات التي تشكل العنصر الأساسي لكيفية البرمجة.
خطوات حل مسألة باستخدام الحاسب:
عند حل أي مسألة باستعمال الحاسب الالكتروني تتم المعالجة بإتباع خطوات نبينها بإيجاز فيما يلي:
•تعريف وتحليل المسألة:
إن تعريف المسألة هو عبارة عن دقة التعبير في تطبيق المسألة بحيث يجعلها معروفة ومفهومة بصورة واضحة وبدون أي غموض لجميع الأشخاص العاملين ضمن مجال الاختصاص الذي تخضع له المسألة.
أما تحليل المسألة ووضع طريقة الحل فهو أصعب المصاعب و أشق الخطوات، و من أجل الوصول إلى حل صحيح فإن كثير من القوانين والطرق الرياضية المناسبة لحل المسألة يجب أن تستعمل و لربما تحتاج أيضاً إلى تطوير هذه القوانين والطرق لنجعلها تناسب الحل في كثير من الأحيان ففي هذه الخطوة يجب تحديد:
• طبيعة المخرجات(النتائج) و تنظيم كتابتها.
• المدخلات (البيانات أو المعلومات) و تحديد نوعها و تنظيم إدخالها إلى الحاسب الالكتروني.
• طرق الحل المناسبة و تقييمها بما يتلاءم مع كيفية تنفيذها بالحاسب الالكتروني و في ضوء ذلك يتم اختيار الحل الأفضل.
• برمجة الحل خطياً:
بعد اختيار طريقة الحل المثالية و تحديد كل ما تشمله من علاقات رياضية، يتم التعبير عنها على شكل خطوات متسلسلة ومترابطة منطقياً، دقيقة الوصف تؤدي إلى الوصول إلى حل المسألة.و هذه الخطوات المتسلسلة تعرف بخوارزمية المسألة Algorithm of the Problem و يمكن تمثيل هذه الخوارزمية بعد إيضاح جميع التعليمات والأوامر المتسلسلة التي يراد تنفيذها في كل خطوة بمخطط وصفي تسلسلي يدعى بمخطط سير العمليات Flowchart وذلك باستخدام مجموعة من الأشكال الاصطلاحية الرمزية. إن كلمة Algorithm مشتقة نسبة إلى العالم العربي المشهور الخوارزمي الذي قام بوضع أسس حل المسائل بشكل تتابعي.
•برمجة الحل باستخدام إحدى لغات البرمجة:
إن مخطط سير العمليات هو عبارة عن تخطيط تصوري مساعد سهل الملاحظة بالنسبة للمبرمج و لكنه غير مفهوم عند الحاسب الالكتروني، لذلك فإن طريقة الحل الممثلة بمخطط سير العمليات يجب أن تكتب بإحدى لغات الحاسب التي يفهمها و التي تتلاءم مع حل المسألة.
و يلي ذلك كتابة البرنامج على الوسط الخارجي المناسب و إدخال البرنامج إلى الحاسب و البرنامج الناتج من هذه الخطوة و المكتوبة بإحدى اللغات الرمزية أو الراقية يسمى بالبرنامج المصدري source program.
• ترجمة البرنامج المصدري:
بعد الانتهاء من كتابة البرنامج المصدري يتعين إدخاله إلى الحاسب للتأكد من صحة كتابته من جهة، ثم لترجمته إلى لغة الآلة بواسطة برنامج الترجمة الخاص في حالة عدم وجود أخطاء في البرنامج المصدري. و تمر عملية الترجمة في المراحل الآتية:
1. مرحلة التحليل المعجمي Lexical analysis:
في هذه المرحلة يتم مطابقة مفردات برنامج المصدر والعلاقات و الأسماء مع تلك المسموح بها في اللغة و اكتشاف أي أخطاء فيها.
2. مرحلة التحليل اللغوي والنحوي Syntax analysis:
في هذه المرحلة تجري عملية مطابقة تعليمات البرنامج المصدري مع القواعد اللغوية المستخدمة، و اكتشاف أي أخطاء فيها، بالإضافة إلى عملية تحويل البرنامج المصدري إلى تعليمات و أوامر رمزية بلغة التجميع.
3.مرحلة ترجمة البرنامج إلى لغة الآلة:
في هذه المرحلة نحصل على البرنامج الهدفي object program و الذي بموجبه يمكن البدء في عملية التنفيذ.
• تجربة البرنامج و تنفيذه:
بعد الحصول على البرنامج الهدفي، تتم تجربته للتأكد من صحته منطقياً وذلك باستخدام عينة من المعطيات الاختبارية Test Data فإذا ثبت صحة طريقة الحل بمطابقة النتائج الخارجة من الحاسب مع النتائج التي تم الحصول عليها يدوياً على سبيل المثال، يمكن تنفيذ البرنامج على المعطيات الحقيقية.