مخطط السير Flowchart
مخطط السير Flowchart هو طريقة لتوصيف خوارزمية البرامج. وذلك عن طريق مجموعة من الاشكال الهندسية المتفق عليها والتي تمثل كل واحدة منها نوع من اوامر الكمبيوتر، يربط بينها مجموعة من الاسهم تمثل حركة سير الاوامر التي سينفذها الكمبيوتر. في البداية، عند كتابة البرامج نقوم باعداد مخطط السير flowchart المقابل له او بمعنى اخر الذي يشرحة حيث انه يساعد في تنظيم الافكار وييسر لنا عملية كتابة الاكواد و ترتيبها واكتشاف الاخطاء.
بعد مدة من الممارسة في كتابة الاكواد، لن نحتاج الى ال flowchart مسبقا قبل تنفيذ افكارنا او بالاحرى سوف نرسمه في اذهاننا، لكن سيظل ال Flowchart اداة جيدة، مثلا عندما نريد ان نشرح بعض من الافكار للغير او نقابل مسألة صعبة!!
هل تتذكر مثال طلب البيتزا في الدرس السابق؟ كان البرنامج كالاتي:
- نأخذ الطلب من العميل(قد يحتوى الطلب على اكثر من بند) .
- نختار بند من القائمة.
- نتأكد ان نوع البيتزا موجود عندنا.
- اذا كان موجودا نضف سعره الى مجموع الحساب ونذهب الى البند التالي.
- ان لم يكن موجودا نذهب الى البند التالي.
- نكرر العملية لكل البنود في الطلب.
- نرجع مجموع الحساب الى العميل لكي يدخل المبلغ المطلوب.
انظر الى المخطط (Flowchart) على اليسار، يمثل هذا المخطط عملية طلب البيتزا، حاول تتبع الشكل، الا تجد الامر سهلا؟!!
قواعد مخطط السير
قواعد ال flowchart بسيطة جدا، هي مجموعة صغيرة من الاشكال الهندسية التي تمثل كل واحدة منهم نوع من الاوامر التي يربط بينهم اسهم ليبين خط سير الحركة وهي كالاتي:
ما هي العملية المعرفة مسبقا؟
تخيل انك تريد ان تقوم في ال flowchart بعمل عملية الشراء اكثر من مرة، هل سنقوم برسم المخطط كله مجددا؟!!، بالطبع لا، هنا يأتي دور العملية المعرفة مسبقا، حيث نقوم بوضع عنوانا للمخطط وعندما نريد اعادة استخداما نستخدم الرمز المخصص له كالاتي:
المخطط Flowchart والمفاهيم الاساسية للبرمجة!!
هل لاحظت تقاربا بين ال Flowchart و المفاهيم الاساسية للبرمجة (الدرس السابق)؟
البيانات ====> المتغيرات (Variables)
التفرع/القرار ====> الشروط (Conditions)
العمليات المعرفة مسبقا ====> الدوال (Functions)
لكن اين التكرار (Looping)؟ موجود ايضا، لكن نستخدم خطوط السير للتعبير عنه كما في المخطط بالاعلى.