CiViL Engineering
اسرة ادارة منتدى CiViL Engineering ترحب بجميع الاعضاء والزوار
نتمنى ان نرى ابدعاتكم المتواصله
مع تحيات ادارة المنتدى
م/ أحمد الشافعى



 
الرئيسيةاليوميةمكتبة الصوربحـثالأعضاءالمجموعاتالتسجيلدخول




تنبيه هام :
الى جميع أعضاء المنتدى رجاء الانتباه نوجه عناية الجميع الى انه يوجد فى اسفل المنتدى " علبة الدردشة " التى تساعد على تواصل الاعضاء مع بعضهم البعض مباشرة

بشرى سارة :
حصريا على منتدى civil Engineering شرح مواد لطلبة الفرقة الاعدادية على هذا الرابط http://civileng.formyjob.net/montada-f7/topic-t58.htm#92

لحظة من فضلك : بعد تسجيلك عزيزى الزائر واشتراكك معنا فى المنتدى ستصلك رسالة تفعيل للاشتراك على الايميل الخاص بك يجب أولا فتحها وتفعيل الاشتراك مع خالص تحياتى

شاطر | 
 

 درس flow chart لكل مبتدئ في البرمجة

اذهب الى الأسفل 
كاتب الموضوعرسالة
Eng.shahy
عضو مؤثر
عضو مؤثر
avatar

عدد المساهمات : 178
عدد النقاط : 319
السٌّمعَة : 4
تاريخ التسجيل : 10/03/2011
العمر : 25
الموقع : 10th of ramdan city

مُساهمةموضوع: درس flow chart لكل مبتدئ في البرمجة   الإثنين 11 يوليو 2011, 9:26 pm



بعض اساسيات البرمجة ومن اهمها شرح مايسمى بمخطط تدفق البيانات او (
Flowchart )
فمثلا اذا اردنا بناء مبنى معين فاننا نقوم بوضع الخطة التى
سيتم عليها البناء من اراضى وعمالة ومواد للبناء ....الخ وهى جميعها تمثل
مدخلات ( Inputs) ومن ثم يتم عمل البناء للمبنى من خلال خلط مواد البناء
معا ووضع الأساسات ونحدد الوقت اللازم للبناء وهو مايسمى معالجة مواد
البناء ( Processing) مماينتج عنه المبنى المراد تشييده او مانسميه مخرجات (
Outputs) . وبنفس الطريقة فان اي برنامج يتم عمله للكمبيوتر يتكون من تلك
الأمور الثلاث . حيث أن اي برنامج لابد له من وجود مدخلات يتم معالجتها
ليتكون لدينا مخرجات هذا البرنامج.



اذن تعالوا معايا نعرف ايه هو ال Flowchart
تعريف flowcharting:
اشكال ورموز موحدة تستخدم لتمثيل عدد من الانشطة التى تتالف منها خطوات حل
المشكلة بمعنى استخدام بعض الرموز التي توضح تدفق البيانات ويفضل
استخدامها قبل البدء في كتابة الكود الخاص بالبرنامج وكذلك فهي تحدد
التدفقات المثلى لخطوات البرنامج المحتملة لحل المشكلة ثم بعد ذلك يتم
اختيار اي لغة برمجة لتستخدم في كتابة البرنامج.
ولرسم المخطط لابد من مراعاة الاتي:
1. تمثيل العملية التى تحدث فعلا وليس مايتوقعه المستخدم وذلك لتفهم المشكلة الحقيقية وتطويرها ماامكن.
2. معرفة جميع الظروف المحيطة بالمشكلة المراد حلها .
3. معرفة الخطوات الذهنية والقرارات التي يمكن ان تتخذ اثناء رسم المخطط.
4. تحديد البدائل في حل المشكلة .
5. التاكد ان مدخلات البرنامج كافية في حل المشكلة.
6. هل مخرجات البرنامج اكبر من مدخلاته وهل هى ضرورية ام يمكن دمجها او ازالة بعضها؟
7. ماهي القرارات التي سوف يتخذها المستخدم اثناء استخدام البرنامج وماهى البدائل التي يمكن اتاحتها له؟
8. كيف تسير عملية انتقال البيانات بين المهام المختلفة وهل يمكن دمج هذه المهام او ازالة بعضها وماهو ترتيب هذه المهام؟
9. كيف يمكن تحسين وتطوير العمليات لتجنب تأخير سير البيانات وانتقالها بين المهام المختلفة؟

وهذه هى الرسوم المستخدمة في رسم flowchart:







بعض الأمثلة:

1. ارسم مخطط flowchart يقوم بجمع الارقام الطبيعية من 1إلى 50




لنتفهم معا هذا المثال وهو اننا نريد حساب مجموع الارقام من 1 الى 50 فتكون المعادلة لدينا:
المجموع = 1+2+3+4+5+6+7+8+9+10 .......+50
عملية يصعب حسابها بسهولة خاصة اذا كان المطلوب جمع الارقام الطبيعية من 1 الى 1000 مثلا او 1 الى 1000000
ولكن يمكن حساب المجموع باستخدام برنامج كمبيوتر سهل جدا ولنفهم معا محتوى الرسم
حيث SUM هو المجموع النهائي وهو يساوى صفر في بداية البرنامج وكذلك N
وهو عداد counter)) يتزايد من خلال عملية تكرارية فهو في بداية البرنامج
يساوى صفر ويزيد ليصبح 1 ثم نقوم بمقارنة N بالرقم 50 على اساس انه هو
الرقم النهائي الذي سيتوقف عنده البرنامج فكلما كان N اقل من 50 تضاف
القيمة الموجودة في N لتوضع في SUM ثم تزيد قيمة N بمقدار 1 لتكون 2
ثم نقارن قيمة N مرة اخرى بالرقم 50 وهكذا الى ان نصل لنهاية البرنامج.

وهكذا في بقية الامثلة:

2. ارسم مخطط flowchart للمقارنة بين 3 ارقام و طباعة الرقم الاكبر



3. ارسم مخطط flowchart لطباعة مضاعف اى عدد يدخله المستخدم للبرنامج









1) Draw a flowchart for the
following case:





A customer wants to build a voice recognition
interface for a Juice distribution machine. The interface should provide the
following tasks:






Welcome the user


• Ask the user to choose one of the following
juices “Apple, Strawberry, Pineapple”.


• Confirm the order


• Manage any reasonably predictable errors
made by the user.


• Provide a polite message if the user
chooses to quit.









وهناك بعض البرامج التي تقوم برسم مخططات flowchart مثل برنامج SmartDraw

وهو للاسف نسخة تجريبية لكن الموقع نفسه مفيد لاكتساب بعض المعلومات عن
كيفية رسم flowchart بشكل جميل ولاكساب معلومات عموما عن كيفية تحليل
المشكلة والعصف الذهنى والموقع هو :
http://www.smartdraw.com/exp/ste/home/

وهناك برنامج اخر وهو Diagram Designer 1.16.3


وهو مجانى 100%







الرجوع الى أعلى الصفحة اذهب الى الأسفل
Eng.shahy
عضو مؤثر
عضو مؤثر
avatar

عدد المساهمات : 178
عدد النقاط : 319
السٌّمعَة : 4
تاريخ التسجيل : 10/03/2011
العمر : 25
الموقع : 10th of ramdan city

مُساهمةموضوع: رد: درس flow chart لكل مبتدئ في البرمجة   الإثنين 11 يوليو 2011, 9:55 pm



ال Flow Charts -مثلها مثل اغلب الطرق الأخرى في تحليل النظم- ما هي إلا
وسيلة لشرح ,وظيفة معينة او برنامج معين يحتوى عدد من العمليات, بطريقة
موحدة يستطيع اي شخص ان يتفهمها.
وهي تختص بشرح وتوصيف العمليات او المهام Process , مما يسهل فيما بعد
تطوير جزء معين من مهمة , كما تفيبد بانها تفصل المهام عن بعضها مما يسهل
من عملية تتبع الاخطاء , كما يمنحك هذا الفرصة بان تنظر لبرنامجك نظرة
عالية ككل بعيداً عن الدخول في تفاصيل كل عملية.

مقدمة:

ولنستطيع بناء الخريطة الخاصة بنا يجب ان نعلم اولاً ما هي العناصر المستخدمة لبناء ال Flow Chat





المستطيل مستوى الاركان: ويرمز إلى اي عملية يقوم بها البرنامج وقد تكون
عملية بسيطة مثل جمع رقمين او عملية مركبة مثل إرسال رسالة بريد إلكتروني.


كما بالصورة نجد ان العناصر المستخدمة لبناء الخريطة هي
المعين: ويرمز إلى قرار او اختيار حيث بناءاً عليه سوف يتفرع البرنامج إلى اكثر من مسار وهو يمثل برمجياً ال condition مثل ال If.
: وده يرمز للتعامل مع ملفات هارجية مثل القرآة من ملف نصي خارجي.
متوازي المستطيلات: ويرمز للتعامل مع البيانات من المدخلات مثل انتظار رقم
معين من المستخدم ليتم تطبيق العملية عليه, او المخرجات مثل ناتج البرنامج.
الشكل اللي ف النص تحت ( تقريباً اسمه منشور او حاجة كده ) : وده بيرمز
لعملية يدوية بس الصراحة عمري ما شفته ولا استخدمته بس واضح انه يعنى لو
هيحصل حاجة يدوية زي مثلاً شد الورقة من الطابعة ولا اخبط الكيبورد عشان
تشتغل حاجة كده.
الشكل الأخير المستطيل مائل الاركان: وده بيرمز لمحدد ( بكسر الدال الأولى
وتشديدها ) يعني من الآخر بداية او نهاية العملية او البرنامج.

الشكل الغريب اللي فوق على اليمين ده

افضل حاجة عشان نفهم الكلام ده هو تطبيق عملي صغير
ولنفترض مثلاً برنامج لحساب المضروب ( من اشهر الامثلة لشرح ال Flow Charts )

طريقة عمل البرنامج ستكون كالآتي
سيتم عمل متغير يحتوي على الرقم الذي سيدخل المستخدم لحساب المضروب له (متغير1.)
ثم سيتم عمل متغير يوضع فيه حصل ضرب الارقام من 1 وحتى الرقم المدخل(متغير1) للحصول على قيمة المضروب (متغير2).
في داخل عملية تكرار سيتم ضرب متغير معين يبدأ من 1 ويزداد بقيمة 1 كل مرة حتى يصل للرقم
المدخل (متغير3) وعندها ينتهى التكرار ليحتوي (المتغير2) على القيمة النهائية للعملية.

المضروب - لمن لا يعلم - هو عملية حسابية يكون حاصلها هو الرقم الاصلي
مضروباً في جميع الارقام الاصلية الاصغر منه وصولاً للرقم 1 مثلاً مضروب 5 =
5*4*3*2*1

*لو تهت من الكلام اللي فات ده متقلقش خالص وشوف العملية هتوضح ازاي لما تترسم.






في الصورة ال Flow Chart لبرنامج المضروب وفيها





3- تعيين قيم للمتغيرين الآخرين المستخدمين في البرنامج وهما M ,F واعطائهم القيمة 1 ( وذلك لأنهم سوف يستخدموا في عملية ضرب ).


1- بداية البرنامج محددة بمستطيل مائل الأركان.
2- عملية إدخال بيانات من المستخدم لعمل عملية المضروب عليها وتوضع في المتغير N.

5- شرط التكرار وهو إذا وصل المتغير M للقيمة الرقم المدخل فلا تكرر 4 وإذا
لم يصل بعد فأجمع 1 على M ( عملية 6 ) ثم كرر 4 ثم لنتحقق منالشرط 5
ثانية.

7- بعد ان خرج من عملية التكرار فمعنى هذا ان M اصبحت تساوي الرقم المدخل N
ومعنى هذا ان F اصبح يحتوي على حاصل ضرب جميع الارقام الصحيحة اصغر من N
اي مضروب N
F=1*2*3*...... Nويتم طباعة الناتج النهائي F
8- نهاية البرنامج.

4- هذه العملية داخل عملية تكرار لأنها سوف بالظبط مثل Do.....While وسنرى
الشرط بعد قليل والعملية هي عبارة عن ضرب المتغير الذي سيحتوي في النعاية
على الناتج F في المتغير الذي يزداد كل مرة بقيمة 1 M.
6- اجمع 1 على المتغير M.







الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
درس flow chart لكل مبتدئ في البرمجة
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
» تطور فحص العين

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
CiViL Engineering  :: الاقسام الدراسيه :: الفرقه الاعدادية ( قسم خاص )-
انتقل الى: