مقدمة:
ال Flow Charts -مثلها مثل اغلب الطرق الأخرى في تحليل النظم- ما هي إلا وسيلة لشرح ,وظيفة معينة او برنامج معين يحتوى عدد من العمليات, بطريقة موحدة يستطيع اي شخص ان يتفهمها.
وهي تختص بشرح وتوصيف العمليات او المهام Process , مما يسهل فيما بعد تطوير جزء معين من مهمة , كما تفيبد بانها تفصل المهام عن بعضها مما يسهل من عملية تتبع الاخطاء , كما يمنحك هذا الفرصة بان تنظر لبرنامجك نظرة عالية ككل بعيداً عن الدخول في تفاصيل كل عملية.
ولنستطيع بناء الخريطة الخاصة بنا يجب ان نعلم اولاً ما هي العناصر المستخدمة لبناء ال Flow Chat
كما بالصورة نجد ان العناصر المستخدمة لبناء الخريطة هي
المستطيل مستوى الاركان: ويرمز إلى اي عملية يقوم بها البرنامج وقد تكون عملية بسيطة مثل جمع رقمين او عملية مركبة مثل إرسال رسالة بريد إلكتروني.
المعين: ويرمز إلى قرار او اختيار حيث بناءاً عليه سوف يتفرع البرنامج إلى اكثر من مسار وهو يمثل برمجياً ال condition مثل ال If.
الشكل الغريب اللي فوق على اليمين ده : وده يرمز للتعامل مع ملفات هارجية مثل القرآة من ملف نصي خارجي.
متوازي المستطيلات: ويرمز للتعامل مع البيانات من المدخلات مثل انتظار رقم معين من المستخدم ليتم تطبيق العملية عليه, او المخرجات مثل ناتج البرنامج.
الشكل اللي ف النص تحت ( تقريباً اسمه منشور او حاجة كده ) : وده بيرمز لعملية يدوية بس الصراحة عمري ما شفته ولا استخدمته بس واضح انه يعنى لو هيحصل حاجة يدوية زي مثلاً شد الورقة من الطابعة ولا اخبط الكيبورد عشان تشتغل حاجة كده.
الشكل الأخير المستطيل مائل الاركان: وده بيرمز لمحدد ( بكسر الدال الأولى وتشديدها ) يعني من الآخر بداية او نهاية العملية او البرنامج.
افضل حاجة عشان نفهم الكلام ده هو تطبيق عملي صغير
ولنفترض مثلاً برنامج لحساب المضروب ( من اشهر الامثلة لشرح ال Flow Charts )
المضروب - لمن لا يعلم - هو عملية حسابية يكون حاصلها هو الرقم الاصلي مضروباً في جميع الارقام الاصلية الاصغر منه وصولاً للرقم 1 مثلاً مضروب 5 = 5*4*3*2*1
طريقة عمل البرنامج ستكون كالآتي
سيتم عمل متغير يحتوي على الرقم الذي سيدخل المستخدم لحساب المضروب له (متغير1.)
ثم سيتم عمل متغير يوضع فيه حصل ضرب الارقام من 1 وحتى الرقم المدخل(متغير1) للحصول على قيمة المضروب (متغير2).
في داخل عملية تكرار سيتم ضرب متغير معين يبدأ من 1 ويزداد بقيمة 1 كل مرة حتى يصل للرقم
المدخل (متغير3) وعندها ينتهى التكرار ليحتوي (المتغير2) على القيمة النهائية للعملية.
*لو تهت من الكلام اللي فات ده متقلقش خالص وشوف العملية هتوضح ازاي لما تترسم.
في الصورة ال Flow Chart لبرنامج المضروب وفيها
1- بداية البرنامج محددة بمستطيل مائل الأركان.
2- عملية إدخال بيانات من المستخدم لعمل عملية المضروب عليها وتوضع في المتغير N.
3- تعيين قيم للمتغيرين الآخرين المستخدمين في البرنامج وهما M ,F واعطائهم القيمة 1 ( وذلك لأنهم سوف يستخدموا في عملية ضرب ).
4- هذه العملية داخل عملية تكرار لأنها سوف بالظبط مثل Do.....While وسنرى الشرط بعد قليل والعملية هي عبارة عن ضرب المتغير الذي سيحتوي في النعاية على الناتج F في المتغير الذي يزداد كل مرة بقيمة 1 M.
5- شرط التكرار وهو إذا وصل المتغير M للقيمة الرقم المدخل فلا تكرر 4 وإذا لم يصل بعد فأجمع 1 على M ( عملية 6 ) ثم كرر 4 ثم لنتحقق منالشرط 5 ثانية.
6- اجمع 1 على المتغير M.
7- بعد ان خرج من عملية التكرار فمعنى هذا ان M اصبحت تساوي الرقم المدخل N ومعنى هذا ان F اصبح يحتوي على حاصل ضرب جميع الارقام الصحيحة اصغر من N اي مضروب N
F=1*2*3*...... Nويتم طباعة الناتج النهائي F
8- نهاية البرنامج [i][b][i][b][center]