الثلاثاء، 8 نوفمبر 2016

دورة دراسة و تحليل الخوارزميات الجزء الرابع: جمل التحكم و الدالة الشرطية if

أكمل المقال
دورة دراسة و تحليل الخوارزميات الجزء الرابع: جمل التحكم : الدالة الشرطية if

مرحبا بكم متتبعي دورة الخوارزميات ، اولا و قبل ان نشرع في الشرح ، نود ان نقدم أخلص الإعتذارات على التأخر في تقديم هذا الموضوع 

اريد أن أنوه للدرس الماضي كان هناك تطبيق على المتغيرات و إختبار في أخر الدرس يمكنك مرتجعته من هنا : مثال خوازرمية بإستخدام المتغيرات

نبدأ على بركة الله سوف أقدم لك الموضوع على شكل تسائلات لطالما كانت الدافع لدي للبحث و التعرف علة خباياها و سوف أجيبك بشكل بسيط و مفسر :) إذا كان لديك غموض أو لبس في أحد الأسئلة أو أنه غير مفسر جيدا فيمكننا مناقشته في التعليقات و سوف أكون سعيدا بذلك . 


أولا ما هي الجملة الشرطية if ؟

الجملة if او الشرط هو ألية تسمح لنا بتنفيد جزء من الكود (ممكن يكون الكود كامل) إذا تحققت الشروط الموصوفة له على سبيل المثال يمكنني إستخدامها لتطبيق شرط على متغير Variable عددي إذا كان أكبر من عدد أو متغير أخر .

لمذا نستخدم الجملة الشرطية if ؟

تصور معي انك تبرمج برنامج لتسجيل معلومات الزبائن و طُلِب منك الشروط التالية لتحليل عمر المتسجل :  
- إذا كان العمر اصغر من 18 قم بإلغاء العملية . 
- إذا كان العمر بين 18 و 32 إسأله عن حالته الإجتماعية . 
- إذا كان العمر أكبر من 32 إسأل عن عدد الأطفال .

هنا سوف يتبادر لك ان البرنامج معقد و يلزم تحليل و ووو ....
الأمر بسيط ، فهذه هي وضيفة الدالة if في 5 او 6 أسطر سوف تنهي البرنامج و سوف يشتغل بشكل سلس و بدون أخطاء.

كيف يتم إستخدام الدالة الشرطية if ؟

إستخدام الدالة الشرطية ثابت بين كل لغات البرمجة (يمكن أن يكون إختلاف في التسمية) و أغلب اللغات تستخدم نفس الطريقة في كتابة الكود . نحن سوف نأخذ مثال من لغة java : 



الخميس، 27 أكتوبر 2016

دورة دراسة و تحليل الخوارزميات الجزء الثالث: مثال خوازرمية بإستخدام المتغيرات

أكمل المقال


دورة دراسة و تحليل الخوارزميات الجزء الثالث: مثال خوازرمية بإستخدام المتغيرات

السلام عليكم متتبعي دورة الخوارزميات ، في سيرورتنا لإستكمال دورة الخوارزميات ، راجعنا في كل من الدروس السابقة ماهية الخوازرميات ، و كيف يمكننا الإنتفاع منها في مجال البرمجة ، و في الدرس السابق و الأخير ، راجعنا المتغيرات ، و الهدف منها في الخوارزميات و دورها الجد مهم في البرمجة كاملة ، و تعرفنا على أنواعها و متى يتم إستخدام كل نوع ، لكن لم نقدم مثالا حيا لإستخدام المتغيرات في الموضوع السابق ، و هذا ما سيتناوله هذا الشرح البسيط . و إن كنت قد إنضممت لنا فقط الأن لدوراتنا المميزة ، فستجد في آخر الموضوع المواضيع السابقة او يمكنك زيارة قسم الخوارزميات مباشرة من هنا .



نبذة عن درس اليوم :

كما أخبرتك عزيزي القارئ و متتبع هذه الدورة 
اليوم سوف نقدم لكم مجموعة من الأمثلة سوف نقوم يتحليلها و شرحها سطر بسطر عن خوارزمية بسيطة قمنا بتطبيق مبدأ المتغيرات فيها ، فحتى نفهم المتغيرات بشكل جيد ، علينا ان نشرحها عبر أمثلة حية لفعل ذلك ، فكما أخبرناك في الدروس السابقة ، المتغيرات تعتبر جزءا لا يتجزء من البرمجة و في جميع اللغات ، و هي خيار عليك فهمه و ضبطه من أجل تسهيل التعامل مع الشفرات البرمجة في المستقبل ، لذلك ، في هذا الموضوع ، سنشرح لك طريقة إستخدام المتغيرات بطريقة  سهلة و بسيطة  من أجل التعرف عليها أكثر بالإضافة الى التعريفات سابقة الذكر في الدروس السابقة .


الشرح :



في هذا المثال قمنا بكتابة خوارزمية بسيطة و سهلة الفهم :) ، و دعونا نحلل هذه ال 5 أسطر التالية  :

- السطر 1 :
قمنا بتعريف 3 متغيرات a و b و c من النوع float يعني متغيرات تقبل قيمة عشرية و حجمها 4bytes ( إذا لم تعرف من أين أتيت بهذا فأدعوك لمراجعة الدرس السابق حيث عرفت لك المتغيرات بكل ما يخصها ) . و نقوم بعملية التعريف عبر إضافة عبارة Variable ثم إسم المتغير ، و ان كان عدد المتغيرات اكثر من واحد فنقوم بفصلهم بعلامة فاصلة (,) ثم نقطتين و نعطي نوع هذه المتغيرات و في حالتنا هذه float .

- السطر 2 :
هذا السطر يمثل بداية البرنامج و هو المدخل لتشغيل الخوارمية ( عند تعريف الخوارزمية قلنا أنها سلسلة ذات ترتيب محدد من العمليات لهذا من الضروري أن تشمل على مدخل للبداية و مخرج للنهاية ) .

- السطر 3 :
كلمة write او عملية الكتابة نقوم بإدراج ما نريد ان يظهر للمستخدم في الشاشة ، و في  هذه الحالة فهو عبارة عن طلب "المرجو إدخال القيم الثلاث" . لاحظ معي اننا ادرجنا العبارة بين إقتباسين اي " " وهو أمر ضروري من أجل إدخال اي قيمة كتابية او نصية . 



- السطر 4 :
كلمة read أو علمية القراءة ، عند الوصول لهذه العملية يتوقف البرنامج و ينتظر إدخال قيم من طرف المستخدم و تعيينها للمتغيرات، و في هذه المرحلة تحدث أغلب المشاكل حيث في المثال طلبنا 3 متغيرات عددية ،  و لكن المستخدم لن يقوم بإدخال القيم عشرية 100% ، فمن الممكن عن طريق الخطأ أن يقوم المستخدم بإدخال حروف او كلمات وهذا وارد لأنه لا يعرف أن الحقل float و المستخدم يدخل قيم حرفية والذي  سيؤدي لتشنج و إغلاق البرنامج . (لا تقلق فحلها سهل ، لكن لن ننشر الطريقة اليوم لأن هدفنا المتغيرات و ليس شيئ أخر ، في الدروس القادمة سوف نتعرف على طريقة حل هذه المشكلة ).

- السطر 5 :

هذا السطر شبيع بالسطر 3 ، و الذي يقوم بإظهار رسالة للمستخدم ولكن هذه المرة الرسالة ليست طلب و إنما النتيجة المراد الحصول عليها ألا و هي جمع المتغيرات الثلاثة في المرحلة الأولى  و ضرب المتغيرات الثلاثة في المرحلة الثانية ، و كما تلاحظ ، فنحن لم نعين متغير أخر للجمع او الضرب ، بل نشرنا النتيجة مباشرة اي قمنا بإظهار النتيجة على شكل (a+b+c) ، هذا لأن الآلة ذكية و تفهم معاني الOperators ( و التي سنعود إليها في درس قادم أيضا ) و بهذه الطريقة سيتتمكن الآلة من فهم انها عملية الجمع و ستقوم بجمع قيم المتغيرات الثلاث و تقديم النتيجة مباشرة .  


الى هنا اكون قد إنتهيت معكم من تحليل هده الخوارزمية التالية و نأمل ان تترك لنا تعليقا حول هذا الدرس ، لكن قبل ذلك ، دعني أسألك السؤال التالي : 

هل تعبت أم ماذا ؟؟ ههههه تعال لازال هناك المزيد ، إليك هذا التمرين التطبيقي الذي سيساعدك في فهم المتغيرات بشكل أفضل و سننتظر حلك للخوارزمية في التعليقات : 

تمرين تطبيقي :

أكتب خوارزمية تطلب 3 متغيرات (الإسم و العمر و الدولة) و تقوم بإرجاع القيم على شكل
- إسمي ....
- عمري ....
- بلدي ....

سوف أنتظر حلولكم يمكنك وضع الجواب في تعليق أو إستخدام https://gist.github.com/ و تسجيل الحل عليه . بالتوفيق للجميع . 





الاثنين، 24 أكتوبر 2016

دورة دراسة و تحليل الخوارزميات الجزء الثاني: المتغيرات

أكمل المقال
دورة دراسة و تحليل الخوارزميات الجزء الثاني: المتغيرات


السلام عليكم أصدقائي متتبعي دورة دراسة و تحليل الخوارزميات .
إن كنت عزيزي القارئ قد غفلت عن الدرس السابق و التمهيدي في هذه الدورة ، فيسعدنا اولا ان تطلع عليه عبر الرابط التالي ، ناقشنا في الدرس السابق ماهية الخوارزميات و الهدف منها و كيف سنستفيد منها في دوراتنا القادمة ، و فهمنا الهدف البرمجي من وراءها ، و الحمد لله لقيت هذه الدورة إستحسان مجموعة مهولة من القراء و المتابعين ، و لذلك ، قررنا ان نحاول تقديم هذه الدورة بشكل يومي ( او توفرت الظروف ) ، لذلك ، إحجز مكانك معنا في هذه الدورة ، و إربط حزام الأمان ، فنحن على وشك أن نأخذك في رحلة في عالم من المقالات المشروحة في عالم الخوارزميات بهذه الدورة المميزة .



نبذة عن درس اليوم : 

في دورتنا هذه لمراجعة تحليل و دراسة الخوارزميات ، سنقود قطارة المعرفة هذا بين طيات هذا المجال ، و سنتعرف على كل جزء من أجزاء الخوارزميات على حدة في كل من مواضيعنا القادمة في هذا المجال ، في موضوعنا السابق ، تعرفنا على كينونة الخوارزميات و ماهيتها ، و اليوم سنتعرف على المتغيرات و التي سنشرحها هي الأخرى في فقراتنا القادمة ، المتغيرات كنبذة أولية ، لا غنى عنها في أي لغة برمجة ، فهي ستساعدنا كثيرا في كتابة شفرة برمجية صحيحة و قوية ، الى جانب ذلك ، سنتعرف على أنواع هذه المتغيرات و الهدف من كل نوع . 


 ما هي المتغيرات ؟

لا شك انك سمعت في إحدى اللغات البرمجية إسم المتغير او Variable ولا شك انك سمعت أيضا ان لها عدة أنواع (متغيرات تقبل قيم نصية مثل Char او String , متغيرات تقبل قيم عددية Integer , double ...) و غيرها من المتغيرات الأخرى ، لكن السؤال المطروح هنا ، ما هي هذه المتغيرات ؟
دعني اوضح لك عزيزي بدون تعقيد ولا إطالة المتغيرات في لغة البرمجة هي أسماء تستخدم للإشارة و التلاعب بقيم يتم تعيينها لها ، كما انها توفر وسيلة لوضع علامات على البيانات مع إسم وصفي لها و يمكن للمتغيرات ان تكون من أنواع مختلفة .

أنواع المتغيرات :

للمتغيرات أنواع أيضا ، فالمتغير كما جاء في إسمه يتغير حسب الحاجة و يتأقلم حسب الكود البرمجي او دعنا نقول انك انت من يجعله يتأقلم حسب الكود البرمجي ، و إليك عزيزي القارئ بعض أهم أنواع المتغيرات مع شرحها و تبسيطها أيضا للقارئ المبتدئ :

byte (number, 1 byte)
النوع byte هو متغير عددي يحتوي رقم من 1byte .
short (number, 2 bytes)
النوع short هو ايضا متغير عددي يمكنه إحتواء رقم من 2bytes .
int (number, 4 bytes)
النوع Int ايضا متغير عدد يمكنه هذه المرة إحتواء رقم من 4bytes .
long (number, 8 bytes)
النوع long كذلك متغير يقبل إحتواء أرقام عددية ولكن هذه المرة الرقم من 8bytes .
float (float number, 4 bytes)
هذا المتغير يقبل إحتواء أعداد من 4bytes ولكن هذه المرة يقبل الأعداد العشرية (15.22 ...) .
double (float number, 8 bytes)
المتغير double هو ايضا شبيه ب float و لكن يستطيع إحتواء أعداد من 8bytes .
char (a character, 2 bytes)
هذا النوع من المتغيرات يقبل حرف او رقم أو اي قيمة بشرط ان تكون من 2bytes.
String(Text)
يقبل إدراج نص كبير غير محدد في الحجم .
 boolean (true or false, 1 byte)
يقبل هذا النوع القيم false او true او 0 او 1 و يستخدم بشكل كبير في البرمجة في الحالات الشرطية.

ستلاحظ أخي الكريم في مجموعة كبيرة من أنواع المتغيرات أعلاه ، ان اكثرها يقبل الأرقام ، و قد يتبادر الى ذهنك سؤال : بما انها تقبل أرقاما ، فلما لا أستعمل متغير واحد رقمي فقط ، يعني من المنطقي أليس كذلك ؟ لما كل هذا التغيير و التنويع في الأنماط إن كانت أكثريتها تحفظ الأرقام ، ببساطة شديدة مجددا ، دعني اشرح لك الأمر بمثال بسيط :
تخيل معي أنك تكتب شفرة برمجية لحساب مجموع الأرقام من 1 إلى 1000 في هذه الحالة المجموع لن يكون كبيرا جدا (500500) ولن يحتاج لموارد كبيرة من الجهاز لتخزين تلك البيانات (نتحدث عن الرام) ، و لكن إذا غيرنا العملية و دعونا نحسب ضرب الأعداد من 1 الى 20 فقط ، ففي هذه الحالة الرقم سيكون كبير جدا (2.43290200817664E18) و لن تستطيع تخزينه في اي من هذه المتغيرات بشكله العادي هذا ، لذلك اثتاء كتابتك للشفرة البرمجية يجب عليك ضبط هذه الأمور و لا تستهن بها لأنها من الضروريات فكلما كانت الشفرة كبيرة و كنت على سبيل المثال تضع كل المتغيرات من النوع float او double سوف تلاحظ ان الجهاز يتشنج و يصبح بطيء نوعا ما لذلك فالإختيار الصحيح للمتغيرات الجيدة حسبك الكود الخاص بك أمر مهم ، و لا تتجاهله بالمرة .

مثال للمتغيرات من لغة الجافا : 


أسماء المتغيرات التي يتم إستخدامها في لغة الجافا قد يكون مختلفا قليلا عن لغات برمجية أخرى ولكن المبدأ يبقى ثابت . 
ألية عمل المتغيرات :



دورة تحليل و دراسة الخوارزميات : ألية عمل المتغيرات :


عند تعريف المتغير في أي برنامج يقوم بحجز منطقة مخصصة  له في ذاكرة الجهاز او الرام و يتم إستخدامها ما دام البرنامج مفتوح و المتغير لم يتم حذفه . يتم حجز المنطقة بسعة المتغبر كاملة مثلا المتغير من نوع Integer يقوم بحجز 4bytes من الذاكرة و double يحجز 8bytes ، لذلك إختيارك لمتغيرات ذات سعة كبيرة بينما انت في حاجة الى متغير ذو رقم ضئيل قد لا يكون حكيما و جيدا بالنسبة لك , و توخى الحذر في تحديد أنواع المتغيرات كما جاء أعلاه من أجل  الحصول على شفرة برمجية نظيفة .

إدراج قيمة للمتغير :
المتغير بالتأكيد يمكنه حفظ قيمة من القيم المعطى له ، و هذا هو الأساس من المتغير ، و هذا مثال توضيحي لكيفية إدراج قيمة المتغير ، او ان صح التعبير بلغة بسيطة ، ملأ المتغير ، فلفعل ذلك ،  يكفي تعريف المتغير و تحديد نوعه بعد ذلك و ندرج قيمته بعد علامة  = ، إليك مثال يشرح عملية إدراج قيمة لمتغير من نوع String و متغير من نوع Integer طبقا للغة الجافا : 
String nom = "MrCharif";
int age = 21; 
لاحظ معي ، انني اولا قمت بإدخال نوع المتغير ( كما أشرت بالأزرق ) و هو أمر يختلف من لغة برمجية لأخرى لكن كما أخبرناكم المبدأ تابث ، ثم بعدها ، دخل إسم المتغير ، و يمكن إختيار أسماء مثل Nom , nom, NoM , Nom1 ، مع الأخذ بعين الإعتبار اللغة البرمجية فبعضها حساس للحروف الكبيرة  ، ثم نضع علامة = و التي تعطي القيمة للمتغير ، ليأتي بعدها اخيرا قيمة المتغير و قد حددناها باللون الأخضر ، و القيمة تختلف حسب نوع المتغير أيضا ، فكما تلاحظ ، أدرجنا الإسم في متغير من نوع String بين علامتي " " ، و هذا ضروري لحفظ قيمة نصية ، بينما لم نقم بذلك في المتغير الثاني ، و الذي يحمل قيمة Integer . 


نصل معك إذن عزيزي القارئ الى ختام الوضوع الثاني المتعلق بدورة دراسة و تحليل الخوارزميات و الذي كان يدور حول ماهية المتغيرات ، عملها ، انواعها و كيفية إضافته و تعديل قيمها ، نرجو ان تكون قد إستمتعت معنا في هذا الدرس الثاني ، و نعدك بدورس قادمة في هذا المجال ، الى ذلك الحين ، إن كان لك أي إستفسار او سؤال حول هذا الدرس اتركه في تعليق و سنجيبك بإذن الله :) . 

الأحد، 23 أكتوبر 2016

الجزء الأول : تمهيد : دورة دراسة و تحليل الخوارزميات

أكمل المقال
تمهيد : دورة دراسة و تحليل الخوارزميات


السلام عليكم و رحمة الله .
في الغالب عزيزي القارئ إن كانت هذه تجربتك الأولى في مجال البرمجة ، او ربما عكس ذلك ، فستجد عنوان الموضوع غريبا قليلا ، فكلمة او عبارة خوارزميات ليست بعبارة يتم تداولها يوميا بين الأقارب و الأحباب ، و قد تبدو لك تلك العبارة معقدة نوعا ما ، او ربما رنت في اذنك في أحد الأيام ، او حتى ربما قرأت عنها نبذة في دراساتك الثانوية او الجامعية كذلك ، الخوارزميات هي موضوعنا لهذا اليوم ، وربما موضوعنا لأيام مقبلة أيضا ، فنحن على وشك أن نقدم دورة جيدة و رائعة في هذا المجال ، و ربما نخرجك من جهلك لهذه العبارة و ننور عقلك في هذا المجال أيضا ، فتابعنا عزيزي القارئ في هذا الموضوع التمهيدي و المواضيع القادمة أيضا و التي هدفها بالطبع الخوارزميات و التي ستتضمن أيضا تحديات و حتى دروس تطبيقية في هذا المجال .



- تدخل بسيط :

دعني أشرح لك أولا اننا - يا عزيزي القارئ(ة) - نحاول جاهدين لنشر المعلومة بين أوساط المهتمين في هذا المجال ، و المهتمين أيضا بمجالات اخرى ، لذلك ، سنخوض غمار سباق طويل في مجال البرمجة في موقعنا بإذن الله ، و ذلك بتقديم مجموعة من الدروس و المقالات في مجالات برمجية مختلفة ، و بما أن بادئ الأمر أحق بأن نبدأ به ، فسيتوجب علينا اولا ان نبدأ في مجال الخوارزميات (Algorithmes) ، هذا المجال الذي سيوسع بصيرتنا حول مجال البرمجة بالإجمال ، لنقودك بعدها الى مجموعة أخرى من الدورات في مجالات مختلفة ، لذلك ، من هذا الموضوع ستحدد بداياتك ، و تقرر مجالك ، و تقسم بتنفيذ قرارك إما في التعلم او التجاهل و ليس الجهل بالطبع .

إقرأ أيضا : ما هي لغات البرمجة الخاصة ببرمجة الذكاء الإصطناعي ؟

- إختبار بسيط قبل البدئ : 


اولا و قبل كل شيء سوف أطرح عليك مجموعة من الأسئلة و حدد جوابك بوضوح ، فإن كان يتوافق مع الإجابة الخاصة بنا ، فمرحبا بك ، فإن لم يكن ... :
1 - هل تريد أن تصبح مبرمج ؟
إذا كان جوابك نعم فأنت في طريقك الصحيح أما إذا كان لا فهذه الدورة لا تناسبك لن تكون قادرا على فهم محتوياتها . 
2 - هل واجهت مشكلة أثناء تحليلك لطريقة عمل أحد البرامج ؟
إذا كنت مبتدأ أو محترف لابد أن تصادف هكذا مشاكل ،  و لكن هناك طرق ستساعدك على إكتساب خبرات التحليل بشكل إحترافي فوظيفة الخوارزميات تكمن في إيجاد حلول للأشياء المعقدة .
3 - هل أنت تائه في المجال ؟
هذا هو السؤال الذي ستكون الإجابة عليه حوالي 85% من مجمل القراء بالإيجاب :) ،  فلا داعي للخوف او فقدان العزيمة فكلنا مررنا من هذه التجربة و لكن الحمد لله إقتربنا من إجتيازها (رغم المصاعب) ونحن هنا لمساعدتك عزيزي القارئ .
4 - هل ستكون من متتبعي الدورة (السؤال الأخير) ؟
إذا كان جوابك نعم (في تعليق) فتأكد عزيزي انك في المكان الصحيح لبداية مشوارك كمبرمج ذو خلفية و قاعدة صلبة .
 و قد سألنا متتبعينا على الفيسبوك بمدى إهتمامهم بالدورة أيضا ، فلا يسعني سوى القول ان تعليقاتهم الإجابية وضحت الأمر جليا لنا :


الدروس في هذه الدورة سوف تكون على شكل مقالات و صور مساعدة قد نلجأ للفيديو لشرح التساولات في أخر كل درس لمساعدة الطلاب على الفهم الصحيح .
بعد هذه الدورة سوف تكون هناك دورات في البرمجة بأحد لغات البرمجة على حسب إختياركم (php او java او C#) .


 إذن .. ما هي الخوارزميات ؟

الخوارزميات هي سلسلة من الخطوات لحل مشكلة معينة أو بشكل عام مجموعة من الخطوات المحددة ذات ترتيب معين يتم إتباعها لحل مشكلة ما (في حالتنا تكون مشكلة برمجية) . 
يتم الأخذ بعين الإعتبار الخوارزميات في مجموعة من المجالات ، سواء البرمجة ، الصناعة ، التدقيق ، التحليل ... ، لكنها تمركزت في مجال البرمجة بالتحديد و إتخذته عشا لها لتستقر فيه ، اذن برمجيا ، فالخوارزميات - كما سبق الذكر - هي مجموعة من الخطوات لحل مشكل او مجموعة مشاكل برمجية قد تصادفها أثناء برمجتك لشيئ معين او تحليله . و الخوارزميات تساعدك على تجاوز تلك المشاكل بإحترافية . 

إقرأ أيضا : نصائح و خطوات عملية تساعدك على تعلم أي لغة برمجية في زمن قياسي

لمذا يجب تعلم الخوارزميات , ما هي فائدتها ؟

تعتبر الخورزميات المدخل للبرمجة . لا يمكن أن تسأل مبرمج عن تعلم البرمجة و يخبرك أن تبدأ بإنشاء موقع تواصل إجتماعي مثل فيسبوك ههه . لانه سوف تسقط من أول وهلة و لن تعرف طريقة حل المشاكل البرمجية . 80% من المبرمجين سوف ينصحونك بتعلم الخوارزميات و تطبيقها بأحد لغات البرمجة (python او C) ليست C++ او java كون C و python سهلة الإستخدام .

كيف يمكننا الإستفادة من الخوارزميات ؟ 


تصور معي صديقي أنك تريد الخروج من المنزل :) لا بد من سلسلة من العمليات : 
  • أولا أن تعرف مكان تواجد الباب 
  • ثانيا يجب ان تجد القفل 
  • ثالثا يجب فتح القفل 
  • رابعا إدارة مقبض الباب 
  • خامسا فتح الباب 
  • سادسا الخروج من الباب
  • سابعا إغلاق الباب 
أرأيت هذه كانت العمليات التي تحتاجها و أنت كل مرة تريد الخروج من المنزل هذه العملية تتكرر لذلك لا نعيرها إهتمام لانها تكون في الخلفية (دماغك شغال لوحدو ههههه) .

إذن كخلاصة لهذا التمهيد ، فالخوارزميات ضرورية في مجال البرمجة من أجل تجاوز المشاكل و حلها ، و الخوارزميات نشهدها يوميا بطريقة غير مباشرة و مثال الخروج من المنزل سابق الذكر أفضل مثال ، كما ان تعلم الخوارزميات مَنُوطٌ به من طرف المبرمجين المحترفين ، و من الصعب إنشاء مشروع بسيط او ضخم دون ادنى فكرة عن كيفية التعامل مع الخوارزميات .
إنتهى تمهيدنا لهذا اليوم ، ترقبونا في الموضوع القادم و الجزء الثاني من هذه الدورة ، الى ذلك الحين ، نترقب تعليقاتكم بشدة و إستفساراتكم أيضا في هذا المجال من أجل الإجابة عليها .