‫اليونيت‬ ‫اجلوهىريت‬
‫العايل‬ ‫التعلين‬ ‫وزارة‬
‫العلوي‬ ‫والبحث‬
‫إب‬ ‫جاهعت‬
‫ميحرلا نمحرلا هللا‬ ‫بسم‬
‫الرتبيت‬ ‫كليت‬
‫واملعلىهاث‬ ‫التعلين‬ ‫تكنىلىجيا‬ ‫قسن‬
‫هاجستري‬ ‫متهيدي‬
0202
‫م‬
–
5221
‫ه‬
‫الباحث‬ ‫أعداد‬
‫عبداجلبا‬ /‫م‬.‫أ‬
‫ر‬
‫الظفري‬ ‫حسني‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
2
0202
‫م‬
–
5221
‫هـ‬
:‫ادلؤلف‬ ‫كلمة‬
 ‫ميحرلا نمحرلا هللا‬‫م‬‫بس‬
‫آلو‬ ‫وعلى‬ ‫دمحم‬ ‫سيدان‬ ‫وادلرسلني‬ ‫األنبياء‬ ‫خامت‬ ‫على‬ ‫والسالم‬ ‫والصالة‬ ‫احلمدهلل‬
:‫بعد‬ ‫أما‬ ،،‫أمجيعن‬ ‫وصحبة‬
‫ادلتواضع‬ ‫العمل‬ ‫ىذا‬ ‫طرح‬ ‫ىذا‬ ‫يف‬ ‫وفقت‬ ‫قد‬ ‫أكون‬ ‫أن‬ ‫عزوجل‬ ‫هللا‬ ‫أسئل‬ ‫فإين‬
‫ع‬ ‫طالب‬ ‫لكل‬ ‫بسيط‬ ‫تبيان‬ ‫إال‬ ‫ليس‬ ‫كان‬‫والذي‬
‫احلاسوب‬ ‫علوم‬ ‫يف‬ ‫مبتدىء‬ ‫لم‬
‫سهلة‬ ‫تكون‬ ‫حىت‬ ‫البيانية‬ ‫ادلخططات‬ ‫ورسم‬ ‫التدفق‬ ‫ائط‬‫ر‬‫وخ‬ ‫اخلوارزميات‬ ‫وتعلم‬
‫الفائدة‬ ‫فيها‬ ‫تكون‬ ‫أن‬ ‫تعاىل‬ ‫هللا‬ ‫وأسئل‬ ،‫كذلك‬‫واحلفظ‬ ‫اإلستيعاب‬ ‫وسهلة‬ ‫الفهم‬
‫ان‬‫ز‬‫مي‬ ‫يف‬ ‫تكون‬ ‫وأن‬ ‫مطلع‬ ‫لكل‬ ‫الواضحة‬ ‫وادلعلومة‬ ‫عنها‬ ‫يبحث‬ ‫من‬ ‫لكل‬
.‫تعاىل‬ ‫نلقاه‬ ‫يوم‬ ‫حسناتنا‬
‫اغفر‬ ‫اللهم‬ ‫احلساب‬ ‫يقوم‬ ‫يوم‬ ‫وادلؤمنات‬ ‫وللمؤمنني‬ ‫ولوالدي‬ ‫يل‬ ‫اغفر‬ ‫اللهم‬
‫األمني‬ ‫دمحم‬ ‫هللا‬ ‫رسول‬ ‫على‬ ‫والسالم‬ ‫والصالة‬ ‫أمجعني‬ ‫وميتنا‬ ‫وحينا‬ ‫وشهدائنا‬ ‫دلوتنا‬
‫الدين‬ ‫يوم‬ ‫إىل‬ ‫ين‬‫ر‬‫الطاى‬ ‫وصحبة‬ ‫آلو‬ ‫وعلى‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ /‫م‬.‫أ‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
3
0202
‫م‬
–
5221
‫هـ‬
‫ال‬
:‫ممدمة‬
‫فروعه؟‬ ً‫ه‬ ‫وما‬ ‫الحاسوب‬ ‫علم‬ ‫هو‬ ‫ما‬
…
‫علوم‬ ‫أو‬ ‫الحوسبة‬ ‫أو‬ ‫الحاسب‬ ‫علوم‬ ‫التفاصٌل‬ ‫الٌن‬
‫الكمبٌوتر‬
Computer science
‫باإلضافة‬ ،‫وتطبٌماتها‬ ‫بالحوسبة‬ ‫ٌختص‬ ً‫وعمل‬ ً‫علم‬ ‫منهج‬
‫الجدوى‬ ‫دراسة‬ ‫إلى‬ ‫تهدف‬ ً‫الت‬ ‫المنهجٌة‬ ‫الدراسات‬ ‫من‬ ً‫ا‬‫نوع‬ ‫كونه‬ ‫إلى‬
feasibility
‫والبنٌة‬ ،
structure
‫والك‬ ،
‫والعبارات‬ ‫المصطلحات‬ ‫من‬ ‫ثٌر‬
expression
‫والمكننة‬
mechanization
‫والخوارزمٌات‬
methodical procedures
‫تخزٌن‬ ‫إلى‬ ‫تهدف‬ ً‫الت‬ ،
‫المعلومات‬ ‫إلى‬ ‫الوصول‬ ‫بهدف‬ ‫والتمدٌمات‬ ‫باالتصاالت‬ ‫المٌام‬ ّ‫م‬‫ث‬ ،‫ومعالجتها‬ ‫المعلومات‬
‫وعت‬ ‫الحاسوب‬ ‫برمجٌات‬ ‫دراسة‬ ‫ٌجب‬ ‫الحاسب‬ ‫علوم‬ ‫وإلتمان‬ ،‫المطلوبة‬
‫بطرق‬ ‫الحاسوب‬ ‫اد‬
.‫الحاسوبٌة‬ ‫األنظمة‬ ‫وتصمٌم‬ ،‫الحوسبة‬ ‫ونظرٌات‬ ،‫الكمبٌوتر‬ ‫بعالم‬ ‫والتخصص‬ ،‫علمٌة‬
‫الحاسب‬ ‫علوم‬ ‫تعرٌف‬
‫والرٌاضٌات‬ ‫الحاسوب‬ ‫عن‬ ‫تنتج‬ ً‫الت‬ ‫المعرفة‬ ‫تطبٌك‬ ‫بإمكانٌة‬ ‫مختص‬ ‫علم‬ ‫هو‬ ‫الحاسب‬ ‫علوم‬
‫حلها‬ ‫متطلبات‬ ‫وتحدٌد‬ ‫المعضالت‬ ‫تحلٌل‬ ‫إمكانٌة‬ ‫مع‬ ،‫المعرفة‬ ‫فروع‬ ‫كافة‬ ‫على‬
‫باستعمال‬
‫األخرى‬ ‫العملٌات‬ ‫وكافة‬ ‫النظام‬ ‫وتمٌٌم‬ ‫تنفٌذها‬ ّ‫م‬‫ث‬ ،‫الالزمة‬ ‫التصمٌمات‬ ‫بجمٌع‬ ‫المٌام‬ ‫مع‬ ،‫الحاسوب‬
‫بالفرق‬ ‫الخاصة‬ ‫المشتركة‬ ‫األهداف‬ ‫وتحمٌك‬ ‫أكبر‬ ‫بفعالٌة‬ ‫العمل‬ ‫لتسهٌل‬ ،‫تستعمل‬ ً‫الت‬ ‫والبرامج‬
.‫والمجموعات‬
‫الحاسب‬ ‫علوم‬ ‫فروع‬
‫دراسة‬ ‫خالله‬ ‫من‬ ‫ٌتم‬ : ‫النظري‬ ‫الحاسوب‬ ‫علم‬
‫أو‬ ،‫الحوسبة‬ ‫نظرٌات‬ ‫وجمٌع‬ ،‫الصورٌة‬ ‫اللغات‬
‫التكالٌف‬ ‫حساب‬ ‫وآلٌة‬ ،‫الخوارزمٌات‬
‫إلى‬ ‫باإلضافة‬ ،‫الصورٌة‬ ‫اللغات‬ ‫ترجمة‬ ‫مهارات‬ ‫بدراسة‬ ‫ٌختص‬ :ً‫العمل‬ ‫الحاسوب‬ ‫علم‬
،‫بسهولة‬ ‫تداولها‬ ‫الممكن‬ ‫من‬ ‫تطبٌمات‬ ‫إلى‬ ‫ذلن‬ ‫بعد‬ ‫تحول‬ ً‫الت‬ ،‫والخوارزمٌات‬ ،‫النظرٌات‬
‫ٌتماشى‬ ‫منتظم‬ ‫بشكل‬ ‫وتطوٌرها‬
.‫الحٌاة‬ ‫مجاالت‬ ‫وكافة‬ ،‫األخرى‬ ‫العلوم‬ ‫مع‬
‫الحٌاة‬ ً‫نواح‬ ً‫ف‬ ‫للحاسوب‬ ‫المتعددة‬ ‫بالتطبٌمات‬ ‫ٌهتم‬ ‫الذي‬ ‫العلم‬ ‫هو‬ :ً‫التطبٌم‬ ‫الحاسوب‬ ‫علم‬
‫اإلدارٌة‬ ‫األنظمة‬ ‫تسٌٌر‬ ‫إلى‬ ‫باإلضافة‬ ،‫الحاسب‬ ‫باستعمال‬ ‫والتصنٌع‬ ،‫التصمٌم‬ :‫مثل‬ ‫المختلفة‬
.‫والصناعٌة‬
‫بط‬ ‫ٌهتم‬ ‫الذي‬ ‫الفرع‬ ‫هو‬ :‫الحاسوب‬ ‫هندسة‬
‫بعتاد‬ ً‫ا‬‫أٌض‬ ‫ٌعرف‬ ‫ما‬ ‫أو‬ ‫الحاسوب‬ ‫ّات‬‫د‬‫ع‬ُ‫م‬ ‫عمل‬ ‫رٌمة‬
‫المعلوماتٌة‬ ‫الهندسة‬ :‫مثل‬ ً‫النواح‬ ‫من‬ ‫الكثٌر‬ ‫على‬ ‫تعتمد‬ ً‫الت‬ ‫الحواسٌب‬ ‫وصناعة‬ ،‫الحاسوب‬
‫علم‬ ‫الحاسب‬ ‫لعلوم‬ ‫أخرى‬ ‫ألسام‬ .‫واإللكترونٌات‬ ،‫الكٌمٌاء‬ ‫علم‬ ‫إلى‬ ‫باإلضافة‬ ،‫والفٌزٌاء‬ ،‫النظرٌة‬
‫ٌعنى‬ :‫النظرٌة‬ ‫والبٌانات‬ ‫الخوارزمٌات‬
.‫البٌانات‬ ‫علوم‬ ً‫ف‬ ‫النظري‬ ‫الجانب‬ ‫بدراسة‬
‫بناء‬ ّ‫م‬‫ث‬ ،‫والتصمٌم‬ ‫التحلٌل‬ ‫ٌشمل‬ ‫الذي‬ ً‫العمل‬ ‫الجانب‬ ‫بدراسة‬ ‫ٌعنى‬ :‫الحاسوبٌة‬ ‫التمنٌات‬ ‫علم‬
.‫للحواسٌب‬ ‫الصلبة‬ ‫األساسٌات‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
4
0202
‫م‬
–
5221
‫هـ‬
‫المجاالت‬ ‫من‬ ‫الكثٌر‬ ‫الحاسب‬ ‫بعلوم‬ ‫سٌتخصص‬ ‫الذي‬ ‫الطالب‬ ‫ٌدرس‬ ‫الحاسب‬ ‫علوم‬ ‫تخصص‬
ٌ‫الر‬ ‫علم‬ ‫دراسة‬ :‫مثل‬ ،‫المتنوعة‬
‫والتكامل‬ ‫التفاضل‬ ‫على‬ ‫التركٌز‬ ‫مع‬ ‫اضٌات‬
calculus
‫والجبر‬ ،
‫ٌساعد‬ ‫حٌث‬ ،‫الحاسوب‬ ‫برمجة‬ ً‫ف‬ ‫األساسٌة‬ ‫العلوم‬ ‫أهم‬ ‫من‬ ‫الرٌاضٌات‬ ‫علم‬ ‫ٌعتبر‬ ‫حٌث‬ ،ً‫الخط‬
:‫مثل‬ ‫الشهٌرة‬ ‫البرمجة‬ ‫لغات‬ ‫من‬ ‫الكثٌر‬ ‫الطالب‬ ‫ٌدرس‬ ‫كما‬ ،‫للبٌانات‬ ‫الحاسوب‬ ‫معالجة‬ ‫على‬
‫برنامج‬
java
‫وبرنامج‬
HTML
‫ع‬ ‫من‬ ‫والملٌل‬ ،
‫وعلوم‬ ،‫عملها‬ ‫وآلٌة‬ ‫اإللكترونٌة‬ ‫الدارات‬ ‫لوم‬
.‫والرابعة‬ ‫الثالثة‬ ‫السنة‬ ‫أثناء‬ ‫الخوارزمٌات‬
‫ال‬
‫شن‬
‫الخوارزمٌات‬ ‫تعلم‬
‫فكلمة‬ ‫البرمجة‬ ‫تعلم‬ ‫لررت‬ ‫إذا‬ ‫لن‬ ‫وجهت‬ ً‫الت‬ ‫المهمة‬ ‫النصابح‬ ‫أحد‬
‫خوارزمٌة‬
‫والعلوم‬ ‫الرٌاضٌات‬ ‫مثل‬ ‫المجاالت‬ ‫من‬ ‫وغٌرها‬ ‫البرمجة‬ ‫مجال‬ ً‫ف‬ ‫ا‬ً‫كثٌر‬ ‫تتردد‬
‫لن‬ ‫ٌستمٌم‬ ‫أن‬ ‫ٌمكن‬ ‫ال‬ ً‫الت‬ ‫المفاهٌم‬ ‫أهم‬ ‫من‬ ً‫فه‬ ،‫ا‬ً‫ص‬‫خصو‬ ‫بالحاسوب‬ ‫ٌتعلك‬ ‫ما‬ ‫وكل‬ ‫والمنطك‬
‫بدونها‬ ‫الحاسب‬ ‫وعلوم‬ ‫والرٌاضٌات‬ ‫البرمجة‬ ‫تعلم‬
.
،‫الخوازمٌات‬ ‫أتعلم‬ ‫وكٌف‬ ،‫الخوارزمٌة‬ ً‫ه‬ ‫ما‬ ‫تتساءل‬ ‫كنت‬ ‫إذا‬
ً‫ف‬ ‫الخوارزمٌات‬ ‫أهمٌة‬ ‫وما‬
‫وكٌف‬ ،‫تعلمها‬ ً‫عل‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫أنواع‬ ً‫ه‬ ‫وما‬ ،‫خاص‬ ‫بشكل‬ ‫البرمجة‬ ً‫وف‬ ‫الحاسب‬ ‫علوم‬
‫عن‬ ‫معرفته‬ ‫تحتاج‬ ‫ما‬ ‫كل‬ ‫سٌالها‬ ً‫ف‬ ‫سنستعرض‬ ‫حٌث‬ ،‫لن‬ ‫الممالة‬ ‫فهذه‬ ‫خوارزمٌة‬ ‫أفضل‬ ‫أكتب‬
ً‫الت‬ ‫الغنٌة‬ ‫العربٌة‬ ‫التعلٌمٌة‬ ‫المصادر‬ ‫من‬ ‫مجموعة‬ ‫لن‬ ‫ونوفر‬ ،‫الخوارزمٌات‬
‫تعلم‬ ‫على‬ ‫تساعدن‬
‫طرٌمة‬ ‫بأفضل‬ ‫الحاسوب‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫حل‬ ‫وطرق‬ ‫الخوارزمٌات‬ ‫رموز‬
.
‫مجاالت‬ ‫عدة‬ ً‫ف‬ ‫بالعمل‬ ‫بدأت‬ ‫عندما‬ ‫اكتشفتها‬ ‫حمٌمة‬ ‫هذه‬ ،‫رونمها‬ ‫تفمد‬ ‫شغف‬ ‫بدون‬ ‫البرمجة‬
‫لمدة‬ ‫البرمجة‬ ً‫ف‬ ‫بالعمل‬ ‫فٌه‬ ‫أستمتع‬ ‫الذي‬ ‫الولت‬ ‫نفس‬ ً‫ف‬ ‫لساعات‬ ‫العمل‬ ْ‫ك‬ِ‫أط‬ ‫لم‬ ‫البرمجة‬ ‫خارج‬
‫متتا‬ ‫شهور‬
‫بشدة‬ ‫لمجالهم‬ ‫وحبهم‬ ‫المبرمجٌن‬ ‫معظم‬ ‫تمٌز‬ ّ‫سر‬ ‫هو‬ ‫الشغف‬ ‫هذا‬ ‫لٌة؛‬
!
‫البرمجة‬ ً‫ف‬ ‫للشغف‬ ‫الوصول‬ ‫المستحٌل‬ ‫من‬ ‫سٌكون‬ ‫خطأ‬ ‫بشكل‬ ‫البرمجة‬ ‫بتعلم‬ ‫بدأت‬ ‫وإن‬
‫أل‬
‫نن‬
‫والفهم‬ ‫والتعمك‬ ‫للتعلم‬ ‫ولٌس‬ ‫دروس‬ ‫عدة‬ ‫من‬ ‫لإلنتهاء‬ ً‫وسع‬ ‫وتلمٌن‬ ‫حفظ‬ ‫على‬ ‫دورن‬ ‫سٌمتصر‬
‫ا‬ ‫حفظ‬ ً‫ا‬‫إطالل‬ ‫المهم‬ ‫فلٌس‬ ‫العمٌك؛‬
‫أل‬
‫كوا‬
‫المحترفٌن‬ ‫المبرمجٌن‬ ‫معظم‬ ‫بالعكس‬ ‫بل‬ ‫الكتابة‬ ‫وطرٌمة‬ ‫د‬
‫من‬ ‫طوٌلة‬ ‫فترة‬ ‫بعد‬ ‫(إال‬ ‫أعمالهم‬ ً‫ف‬ ‫ٌستخدمونها‬ ً‫الت‬ ‫التمنٌات‬ ‫أوامر‬ ‫بمعظم‬ ‫علم‬ ‫على‬ ‫لٌسوا‬
‫ا‬ ‫بسهولة‬ ‫حفظ‬ُ‫ت‬‫ف‬ ‫التمنٌة‬ ‫هذه‬ ‫ممارسة‬
‫أل‬
‫أما‬ ‫السرعة؛‬ ‫بعض‬ ‫إال‬ ‫أهمٌة‬ ‫للحفظ‬ ‫لٌس‬ ‫لكن‬ )‫كواد‬
‫بعض‬ ‫استخدام‬ ‫بل‬ ‫أكواد‬ ‫حفظ‬ ‫لٌست‬ ‫البرمجة‬
‫أكواد‬ ‫إلى‬ ‫عملن‬ ً‫ف‬ ‫ما‬ ‫تحوٌل‬ ً‫ف‬ ‫البرمجة‬ ‫مبادئ‬
ً‫ا‬‫إطالل‬ ‫أكواد‬ ‫حفظ‬ ‫ولٌس‬ ‫الحاسوب؛‬ ‫ٌفهمها‬
.
‫ا‬ ‫بسبب‬ ‫تعلمهم‬ ‫رحلة‬ ً‫ف‬ ‫الجدد‬ ‫المبرمجٌن‬ ‫من‬ ‫سنوات‬ ‫ٌضٌع‬ ً‫العرب‬ ‫الوطن‬ ً‫ف‬ ً‫ا‬‫وغالب‬
‫إل‬
‫تجاه‬
‫ا‬ ‫وكتابة‬ ‫برمجة‬ ‫لغة‬ ‫بتعلم‬ ‫ٌوم‬ ‫أول‬ ‫من‬ ‫مباشرة‬ ‫فٌبدأ‬ ،‫فٌه‬ ‫ٌسٌر‬ ‫الذي‬ ‫الخاطا‬ ‫والمسار‬
‫أل‬
‫لكن‬ ‫كواد‬
ً‫ف‬
‫هذه‬ ،‫والشروط‬ ‫التكرارٌة‬ ‫والحلمات‬ ‫والدوال‬ ‫كالمتغٌرات‬ ‫أساسٌة‬ ‫مبادئ‬ ‫لها‬ ‫البرمجة‬ ‫الحمٌمة‬
‫به‬ ‫تختص‬ ‫ما‬ ‫لتنفٌذ‬ ‫لغة‬ ‫كل‬ ‫مع‬ ‫مختلف‬ ‫بشكل‬ ‫ستخدم‬ُ‫ت‬‫و‬ ‫البرمجة‬ ‫لغات‬ ‫جمٌع‬ ً‫ف‬ ‫مشتركة‬ ‫المبادئ‬
‫وما‬ ‫الدالة‬ ً‫ه‬ ‫ما‬ ‫تعرف‬ ‫أن‬ ‫دون‬ ‫ما‬ ‫بلغة‬ ‫دالة‬ ‫أو‬ ‫متغٌر‬ ‫تنشا‬ ‫بتعلم‬ ‫بدأت‬ ‫إن‬ ‫لكن‬ ... ‫اللغة‬ ‫هذه‬
‫ا‬ ‫ستجد‬ ‫؛‬ ‫ٌعمالن‬ ‫وكٌف‬ ‫استخدامهما‬ ‫من‬ ‫الهدف‬ ‫وما‬ ‫المتغٌر‬ ‫هو‬
‫أل‬
‫وسٌكون‬ ‫للغاٌة‬ ‫صعبة‬ ‫مور‬
‫البرمجة‬ ‫مع‬ ‫الشغف‬ ‫لمرحلة‬ ‫ابدا‬ ‫تصل‬ ‫ولن‬ ،‫وإبداع‬ ‫فهم‬ ‫ولٌس‬ ‫وحفظ‬ ‫تلمٌن‬ ‫تعلمن‬ ‫اسلوب‬
‫وا‬
‫إل‬
‫ولن‬ ‫التولف‬ ‫على‬ ‫جبر‬ُ‫ت‬‫س‬ ‫بطوٌلة‬ ‫لٌست‬ ‫فترة‬ ‫بعد‬ ً‫بالتال‬ ،‫فٌها‬ ‫المشكالت‬ ‫بحل‬ ‫والتلذذ‬ ‫بداع‬
‫التمدم‬ ‫تستطٌع‬
‫واحدة‬ ‫خطوة‬ ‫ولو‬
!
‫تعلم‬ ‫لبل‬ ً‫ال‬‫أو‬ ‫الخوارزمٌات‬ ‫بتعلم‬ ‫صحٌح‬ ‫بشكل‬ ‫بدأت‬ ‫لو‬ ‫لكن‬
‫العمٌك‬ ‫والفهم‬ ‫التعمك‬ ‫من‬ ‫وستتمكن‬ !‫كاملة‬ ‫سنة‬ ً‫ف‬ ‫ٌتعلمونه‬ ‫ما‬ ‫شهر‬ ً‫ف‬ ‫ستتعلم‬ ،‫البرمجة‬
ً‫ف‬ ‫ٌدور‬ ‫ما‬ ‫بتحوٌل‬ ‫لتبدأ‬ ‫المفاتٌح‬ ‫لوحة‬ ‫ٌدان‬ ‫تالمس‬ ‫عندما‬ ‫وإبداع‬ ‫شغف‬ ‫عندن‬ ‫سٌتولد‬ ً‫وبالتال‬
‫لمشك‬ ّ‫ل‬‫ح‬ ‫من‬ ‫عملن‬
‫أكواد‬ ‫إلى‬ ‫ما‬ ‫فكرة‬ ‫تنفٌذ‬ ‫أو‬ ‫ما‬ ‫برمجٌة‬ ‫لة‬
.
‫تعلٌمن‬ ‫ستتولى‬ ‫الخوارزمٌات‬
‫ا‬ ‫المبادئ‬
‫أل‬
‫نستخدم‬ ‫لماذا‬ ‫وتتعلم‬ ،‫المبادئ‬ ‫هذه‬ ‫وتفهم‬ ‫تتعلم‬ ‫فمط‬ ،‫أكواد‬ ‫كتابة‬ ‫بدون‬ ‫للبرمجة‬ ‫ساسٌة‬
‫معظم‬ ً‫ف‬ ‫ستواجهن‬ ً‫الت‬ ‫المشكالت‬ ‫معظم‬ ‫وتعرف‬ ‫التكرارٌة‬ ‫والحلمات‬ ،‫الدوال‬ ،‫المتغٌرات‬ ‫مثال‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
5
0202
‫م‬
–
5221
‫هـ‬
‫كتا‬ ‫عند‬ ‫اللغات‬
‫ا‬ ‫البرمجة‬ ‫مبادئ‬ ‫من‬ ‫لمبدأ‬ ‫كود‬ ‫بة‬
‫أل‬
ً‫ف‬ ‫المبادئ‬ ‫هذه‬ ‫استخدام‬ ً‫ف‬ ‫وتتمرس‬ ،‫ساسٌة‬
‫ا‬ ‫البنٌة‬ ‫بالضبط‬ ‫ستفهم‬ ‫ستواجهن؛‬ ً‫الت‬ ‫البرمجٌة‬ ‫المشكالت‬ ‫حل‬
‫أل‬
‫ساسٌة‬
‫أل‬
‫فإن‬ ‫كان؛‬ ‫أٌا‬ ‫كود‬ ‫ي‬
‫ا‬ ‫أنت‬ ‫تمتلكها‬ ‫البرمجة‬ ‫لغات‬ ‫كل‬ ‫أساسٌات‬ ً‫ا‬‫فتمرٌب‬ ‫الخوارزمٌات‬ ‫تعلمت‬
‫ﻵ‬
‫معرفة‬ ‫فمط‬ ‫لن‬ ‫وٌتبمى‬ ‫ن‬
‫هذه‬ ‫تستخدم‬ ‫كٌف‬
‫فا‬ ،‫ترٌدها‬ ً‫الت‬ ‫اللغة‬ ‫مع‬ ‫المبادئ‬
‫إل‬
ً‫ف‬ ‫طرٌمة‬ ‫لها‬ ‫لغة‬ ‫كل‬ ‫أن‬ ‫فمط‬ ‫ختالف‬
‫استخدام‬ ‫مجاالت‬ ‫ولها‬ ،‫الكتابة‬
...
‫ا‬ ‫تحرٌن‬ ً‫ف‬ ‫ستخدم‬ُ‫ت‬ ‫لغات‬ ‫فهنان‬
‫ﻵ‬
‫تختص‬ ‫لغات‬ ‫وهنان‬ ‫الت‬
‫اللغات‬ ‫كل‬ ...ً‫ال‬‫مث‬ ‫الهواتف‬ ‫تطبٌمات‬ ‫بناء‬ ً‫ف‬ ‫ستخدم‬ُ‫ت‬ ‫لغات‬ ‫وهنان‬ ‫الوٌب‬ ‫وصفحات‬ ‫بالموالع‬
‫كبن‬ ‫المفاهٌم‬ ‫نفس‬ ‫تستخدم‬
‫عند‬ ‫ستتعلمه‬ ‫ما‬ ً‫بالتال‬ ...‫فمط‬ ‫الكتابة‬ ‫طرٌمة‬ ‫تختلف‬ ‫ولكن‬ ‫لها‬ ‫أساسٌة‬ ‫ٌة‬
‫التعمك‬ ً‫ف‬ ‫مباشرة‬ ‫ستبدأ‬ ‫ثم‬ !‫سنوات‬ ‫ولٌس‬ ... ‫أٌام‬ ً‫ف‬ ‫الكتابة‬ ‫طرٌمة‬ ‫هو‬ ‫سٌكون‬ ‫لغة‬ ‫أي‬ ‫تعلم‬ ‫بدء‬
‫اللغة‬ ً‫ف‬
‫أل‬
‫ا‬ ‫هذه‬ ‫استخدام‬ ‫كٌفٌة‬ ‫بدراسة‬ ‫فتبدأ‬ ،‫أساسٌاتها‬ ‫تعلمت‬ ‫ستكون‬ ‫نن‬
‫أل‬
ً‫بالتال‬ ...‫ساسٌات‬
‫ا‬ ‫سٌكون‬
‫أل‬
‫مر‬
‫ٌكون‬ ‫ما‬ ‫أسرع‬
!
ً‫ال‬‫فمث‬ ،‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫مرتبة‬ ‫خطوات‬ ‫عن‬ ‫عبارة‬ ً‫ه‬ ‫فالخوارزمٌة‬
‫نضرب‬ ‫ثم‬ ،‫بالعرض‬ ً‫نأت‬ ‫ثم‬ ،‫بالطول‬ ً‫ال‬‫أو‬ ً‫نأت‬ ‫مستطٌل‬ ‫مساحة‬ ‫لحساب‬ ‫الهندسة‬ ً‫ف‬ ‫تمول‬
‫الطول‬
x
‫ا‬ ‫البرمجة‬ ً‫ف‬ ‫أما‬ ،‫بسٌطة‬ ‫خوارزمٌة‬ ‫هذه‬ !‫المساحة‬ ‫على‬ ‫لنحصل‬ ‫العرض‬
‫أل‬
‫نفس‬ ‫مر‬
‫بالمشكال‬ ‫ٌختص‬ ‫لكن‬ ً‫ا‬‫تمرٌب‬ ‫الشًء‬
‫وحلولها‬ ‫البرمجٌة‬ ‫ت‬
...
ً‫ال‬‫شك‬ ‫تطلب‬ ‫ال‬ ‫الخوارزمٌة‬ ً‫وبالتال‬
‫على‬ ‫ما‬ ‫لمشكلة‬ ‫حل‬ ‫من‬ ‫عملن‬ ً‫ف‬ ‫ما‬ ‫وضع‬ ‫المهم‬ ‫لها‬ ‫مخططات‬ ‫رسم‬ ‫أو‬ ‫كتابتها‬ ‫ٌمكن‬ ‫بل‬ ً‫ا‬‫معٌن‬
‫برمجٌة‬ ‫مبادئ‬ ‫ومن‬ ‫ما‬ ‫لغة‬ ً‫ف‬ ‫تعلمته‬ ‫بما‬ ‫بالن‬ ً‫ف‬ ‫ما‬ ‫تطبٌك‬ ‫إال‬ ‫لٌست‬ ‫أٌضا‬ ‫والبرمجة‬ ،‫الورق‬
‫الحاسوب‬ ‫لٌفهمه‬
.
‫الخوارزمٌة‬ ً‫ه‬ ‫ما‬
‫؟‬
‫وتحلٌل‬ ‫الخوارزمٌات‬ ‫تعمد‬ ‫ونظرٌة‬ ‫الخوارمٌات‬ ‫تصمٌم‬ :ً‫وه‬ ‫فروع‬ ‫ثالثة‬ ‫له‬ ‫الخوارزمٌات‬ ‫علم‬
‫معرفة‬ ‫والثالث‬ ‫المسابل‬ ‫صعوبة‬ ‫تعٌٌن‬ ً‫والثان‬ ‫المسألة‬ ‫لحل‬ ‫طرٌك‬ ‫إٌجاد‬ ‫األول‬ .‫الخوارزمٌات‬
.‫المسألة‬ ‫لحل‬ ‫للخوارزمٌة‬ ‫الكافٌٌن‬ ‫الحفظ‬ ‫ومساحة‬ ‫الزمن‬ ‫مثل‬ ‫المسألة‬ ‫متعلمات‬
‫الخوارزمٌة‬
algorithm
‫أو‬ ‫الرٌاضٌات‬ ً‫ف‬ ‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫المرتبة‬ ‫التعلٌمات‬ ‫من‬ ‫مجموعة‬ ً‫ه‬
‫محدود‬ ‫خطوات‬ ‫وعدد‬ ‫محدد‬ ‫زمن‬ ‫خالل‬ ‫الٌومٌة‬ ‫الحٌاة‬ ً‫ف‬ ‫تواجهن‬ ‫مشكلة‬ ‫أي‬
.
‫ر‬ّ‫ك‬‫ف‬ .‫المشكلة‬ ‫بحل‬ ً‫تنته‬ ‫بحٌث‬ ‫بة‬ّ‫ت‬‫ر‬ُ‫م‬‫و‬ ‫واضحة‬ ‫الخوارزمٌة‬ ‫وتعلٌمات‬ ‫خطوات‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬
‫طبخ‬ ‫وصفة‬ ‫كانت‬ ‫لو‬ ‫كما‬ ‫الخوارزمٌة‬ ً‫ف‬
‫خطوة‬ ‫ما‬ ‫وجبة‬ ‫تحضٌر‬ ‫طرٌمة‬ ‫الوصفة‬ ‫ّم‬‫د‬‫تم‬ ‫إذ‬ ،
‫وتمدٌمها‬ ‫الوجبة‬ ‫تحضٌر‬ ‫من‬ ‫خطوة‬ ‫آخر‬ ‫وحتى‬ ،‫للوجبة‬ ‫الضرورٌة‬ ‫بالممادٌر‬ ً‫ء‬‫ابتدا‬ ،‫بخطوة‬
.
‫أهمٌة‬ ‫تبرز‬ ‫لكن‬ ‫الحٌاة‬ ‫مجاالت‬ ‫كل‬ ً‫ف‬ ‫ٌطبك‬ ‫أن‬ ‫ٌمكن‬ ‫الخوارزمٌات‬ ‫مفهوم‬ ‫أن‬ ‫ورغم‬
ً‫ف‬ ‫الخوارزمٌات‬
‫الحاسب‬ ‫علوم‬
ً‫المنطم‬ ‫تفكٌره‬ ‫وتعزز‬ ‫المبرمج‬ ‫عمل‬ ‫تنظم‬ ً‫فه‬ ‫خاص‬ ‫بشكل‬
‫على‬ ‫ًا‬ٌ‫فعل‬ ‫وتطبٌمها‬ ‫حلها‬ ‫لبل‬ ‫أفضل‬ ‫بشكل‬ ‫وتصورها‬ ‫المشكالت‬ ‫فهم‬ ‫من‬ ‫وتمكنه‬ ً‫والرٌاض‬
‫مكتوبة‬ ‫حاسوبٌة‬ ‫برامج‬
‫البرمجة‬ ‫لغات‬ ‫بإحدى‬
.
‫الخوارزمٌات‬ ‫تارٌخ‬
:
-
‫تعلٌمات‬ ‫ٌحتوي‬ ‫لوح‬ ‫ألدم‬ ‫على‬ ‫ر‬ِ‫ث‬ُ‫ع‬ ‫إذ‬ ،‫البابلٌٌن‬ ‫إلى‬ ‫المعروفة‬ ‫الخوارزمٌات‬ ‫ألدم‬ ‫عزى‬ُ‫ت‬
‫لسنة‬ ‫تارٌخه‬ ‫وٌعود‬ ،‫المسمة‬ ‫عملٌة‬ ‫إلجراء‬ ‫خوارزمٌة‬
ٕ٘ٓٓ
‫على‬ ‫كذلن‬ ‫ر‬ِ‫ث‬‫ع‬ ‫ولد‬ .‫المٌالد‬ ‫لبل‬
‫تعود‬ ‫المدامى‬ ‫المصرٌٌن‬ ‫إلى‬ ‫تعود‬ ‫حسابٌة‬ ‫خوارزمٌات‬
‫سنة‬ ‫إلى‬
ٔ٘٘ٓ
‫المٌالد‬ ‫لبل‬
.
‫الرٌاضٌة‬ ‫الخوارزمٌات‬ ‫من‬ ‫الكثٌر‬ ‫ظهرت‬ ‫حٌث‬ ،‫الٌونان‬ ‫حمبة‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫استخدام‬ ‫ازداد‬
ً‫وبال‬ ‫خارج‬ ‫تحسب‬ ً‫الت‬ ‫إللٌدس‬ ‫لسمة‬ ‫خوارزمٌة‬ ‫مثل‬ ،‫هذا‬ ‫ٌومنا‬ ‫حتى‬ ‫ستخدم‬ُ‫ت‬ ‫تزال‬ ‫ما‬ ً‫الت‬
‫المسمة‬ ‫عملٌة‬
.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
6
0202
‫م‬
–
5221
‫هـ‬
،‫اإلسالمٌة‬ ‫الحضارة‬ ‫عصر‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫مفهوم‬ ‫تطور‬
‫الخوارزمٌات‬ ‫المسلمون‬ ‫استخدم‬ ‫إذ‬
‫حل‬ ‫خوارزمٌة‬ ً‫ه‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫أشهر‬ ‫ولعل‬ .‫الرٌاضٌة‬ ‫والمسابل‬ ‫المعادالت‬ ‫لحل‬
‫الرٌاضٌات‬ ‫لعالم‬ "‫والممابلة‬ ‫الجبر‬ ‫"حساب‬ ‫كتاب‬ ً‫ف‬ ‫رت‬ِ‫ك‬ُ‫ذ‬ ً‫الت‬ ‫الثانٌة‬ ‫الدرجة‬ ‫من‬ ‫المعادالت‬
‫المسلم‬
ً‫الخوارزم‬ ‫موسى‬ ‫بن‬ ‫دمحم‬
‫اللغة‬ ً‫ف‬ ‫خوارزمٌة‬ ‫كلمة‬ ‫إلٌه‬ ‫نسب‬ُ‫ت‬ ‫والذي‬ ،‫الجبر‬ ‫علم‬ ‫مؤسس‬
‫الالتٌنٌة‬ ‫اللغات‬ ً‫ف‬ ‫لها‬ ‫الممابلة‬ ‫الكلمة‬ ‫وكذلن‬ ،‫العربٌة‬
algorithm
‫الكلمة‬ ‫من‬ ‫شتمة‬ُ‫م‬‫ال‬
al-
Khwārizmī
ً‫للخوارزم‬ ً‫الروم‬ ‫االسم‬ ‫وهو‬ ،
-
‫الجبر‬ ‫كلمة‬ ‫ا‬ً‫ض‬ٌ‫وأ‬
algebra.
‫كلمة‬ ‫األوروبٌون‬ ‫استخدم‬
algorithm
‫استخدمها‬ ً‫الت‬ ‫والتمنٌات‬ ‫المواعد‬ ‫على‬ ‫للداللة‬
‫المو‬ ‫من‬ ‫مجموعة‬ ّ‫ي‬‫أ‬ ‫لٌشمل‬ ‫المصطلح‬ ‫هذا‬ ‫م‬ِّ‫م‬ُ‫ع‬ ّ‫م‬‫ث‬ ،‫الجبرٌة‬ ‫المعادالت‬ ‫لحل‬ ً‫الخوارزم‬
‫اعد‬
‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫الساعٌة‬ ‫والتمنٌات‬
.
‫مع‬ ‫ا‬ً‫ص‬‫خصو‬ ،‫النهضة‬ ‫عصر‬ ‫ّان‬‫ب‬‫إ‬ ‫اإلسالمٌة‬ ‫الحمبة‬ ‫بعد‬ ‫التطور‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫مفهوم‬ ‫استمر‬
‫على‬ ‫تنفٌذها‬ ‫ٌمكن‬ ‫خوارزمٌة‬ ‫أول‬ ‫وإنتاج‬ ‫عشر‬ ‫التاسع‬ ‫المرن‬ ً‫ف‬ ‫الحوسبة‬ ‫علم‬ ‫أسس‬ ‫ر‬ ّ‫تطو‬
‫سنة‬ ‫الحاسوب‬
ٔ4ٗٓ
‫لوفانس‬ ‫آدا‬ ‫ٌد‬ ‫على‬
Ada Lovelace.
ٌ‫الص‬ ّ‫م‬‫ث‬
‫لمفهوم‬ ‫النهابٌة‬ ‫اغة‬
‫تورنغ‬ ‫آالن‬ ‫ٌد‬ ‫على‬ ‫الخوارزمٌة‬
Alan Turing
‫الشهٌرة‬ ‫آلته‬ ‫عبر‬
‫تورنغ‬ ‫آلة‬
(Turing
machine).
‫الخوارزمٌة‬ ‫أركان‬
:
-
‫خوارزمٌة‬ ‫أي‬ ‫تملن‬
ً‫وه‬ ‫ربٌسٌة‬ ‫أركان‬ ‫ثالثة‬
:

‫المدخالت‬ ‫أو‬ ‫الدخل‬
:
‫علٌها‬ ‫تعمل‬ ً‫الت‬ ‫والمطلوبة‬ ‫الضرورٌة‬ ‫األشٌاء‬ ‫أو‬ ‫البٌانات‬ ‫تمثل‬
‫ٌسمى‬ ‫عناصره‬ ‫تعداد‬ ّ‫فإن‬ ،‫عناصر‬ ‫عدة‬ ‫من‬ ‫ا‬ً‫ف‬‫مؤل‬ ‫الدخل‬ ‫كان‬ ‫وإن‬ ‫الخوارزمٌة‬
‫حجم‬
‫الدخل‬
‫من‬ ‫مؤلفة‬ ‫نصٌة‬ ‫سلسلة‬ ‫أو‬ ‫مصفوفة‬ ‫عن‬ ‫عبارة‬ ‫الدخل‬ ‫كان‬ ‫إن‬ ً
‫مثال‬ ،
n
،‫عنصر‬
‫ح‬ ّ‫فإن‬
‫سٌساوي‬ ‫الدخل‬ ‫جم‬
n.
‫وجبة‬ ً‫طه‬ ‫خوارزمٌة‬ ‫دخل‬ ّ‫فإن‬ ‫الطبخ‬ ‫مثال‬ ‫إلى‬ ‫عدنا‬ ‫لو‬
‫الوجبة‬ ‫إلعداد‬ ‫ستخدمة‬ُ‫م‬‫ال‬ ‫الممادٌر‬ ً‫ه‬ ‫ستكون‬ ‫معٌنة‬
.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
7
0202
‫م‬
–
5221
‫هـ‬

‫الخوارزمٌة‬ ‫متن‬
:
‫المعالجة‬ ‫خطوات‬ ‫من‬ ‫سلسلة‬ ‫علٌه‬ ‫ّك‬‫ب‬‫وتط‬ ،‫الدخل‬ ‫الخوارزمٌة‬ ‫تأخذ‬
‫كل‬ ‫الطبخ‬ ‫خوارزمٌة‬ ‫متن‬ ‫ٌشمل‬ ، ً
‫مثال‬ .‫ا‬ً‫ف‬‫سل‬ ‫ّدة‬‫د‬‫ح‬ُ‫م‬‫وال‬ ‫المتتابعة‬
‫الممادٌر‬ ‫تجهٌز‬ ‫عملٌات‬
‫طهٌها‬ ‫وخطوات‬ ‫ادها‬َ‫د‬‫وإع‬
.

‫خرجات‬ُ‫م‬‫ال‬ ‫أو‬ ‫الخرج‬
:
‫لنا‬ ‫نتج‬ُ‫ت‬ ،‫الخطوات‬ ‫كافة‬ ‫تنفٌذ‬ ‫من‬ ‫الخوارزمٌة‬ ً‫تنته‬ ‫أن‬ ‫بعد‬
‫نفسها‬ ‫الوجبة‬ ‫هو‬ ‫سٌكون‬ ‫وجبة‬ ً‫طه‬ ‫خوارزمٌة‬ ‫خرج‬ ً
‫مثال‬ .‫المشكلة‬ ‫حل‬ ‫ٌمثل‬ ‫ا‬ً‫ج‬‫خر‬
‫ّة‬ٌ‫ومطه‬ ‫جاهزة‬
.
‫ج‬ ‫خوارزمٌة‬ ‫كتابة‬ ‫أردنا‬ ‫إذا‬ ‫المثال‬ ‫سبٌل‬ ‫على‬
‫هذه‬ ‫أركان‬ ‫ستكون‬ ‫صحٌحٌن‬ ‫عددٌن‬ ‫داء‬
ً‫كالتال‬ ‫الخوارزمٌة‬
:

‫الدخل‬
:
‫جدابهما‬ ‫ناتج‬ ‫حساب‬ ‫المطلوب‬ ‫الصحٌحان‬ ‫العددان‬ ‫هو‬
x, y

‫الخرج‬
:
‫الجداء‬ ‫ناتج‬ ‫هو‬
z

‫الخوارزمٌة‬ ‫متن‬
:
o
‫الخطوة‬
ٔ
‫ابدأ‬ :
o
‫الخطوة‬
ٕ
‫صحٌحة‬ ‫أعداد‬ ‫ثالثة‬ ‫عن‬ ‫بالتصرٌح‬ ‫لم‬ :
x
‫و‬
y
‫و‬
z
o
‫الخطوة‬
ٖ
‫المدخالت‬ ‫لٌم‬ ‫أدخل‬ :
x
‫و‬
y
o
‫الخطوة‬
ٗ
‫لٌم‬ ‫اضرب‬ :
x
‫بـ‬
y
o
‫الخطوة‬
٘
ً‫ف‬ ‫الضرب‬ ‫ناتج‬ ‫ن‬ّ‫خز‬ :
z
o
‫الخطوة‬
ٙ
‫لٌمة‬ ‫اعرض‬ :
z
o
‫الخطوة‬
7
‫تولف‬ :
‫الخوارزمٌات‬ ‫حل‬ ‫خطوات‬
:
-
‫إجابات‬ ‫على‬ ‫العثور‬ ً‫ف‬ ‫تفكر‬ ‫أن‬ ‫علٌن‬ ‫لحلها‬ ‫خوارزمٌة‬ ‫كتابة‬ ‫وترٌد‬ ‫مشكلة‬ ‫أي‬ ‫تواجهن‬ ‫عندما‬
‫التالٌة‬ ‫لألسبلة‬
:

‫من‬ ‫علٌها‬ ‫الحصول‬ ‫إلى‬ ‫أحتاج‬ ً‫الت‬ ‫المعلومات‬ ً‫ه‬ ‫ما‬ ‫أي‬ ‫الخوارزمٌة‬ ‫دخل‬ ‫هو‬ ‫ما‬
‫المستخدم؟‬

‫المستخدم؟‬ ‫على‬ ‫لعرضها‬ ‫أحتاج‬ ً‫الت‬ ‫المعلومات‬ ً‫ه‬ ‫ما‬ ‫أي‬ ‫الخوارزمٌة‬ ‫خرج‬ ‫هو‬ ‫ما‬

‫المشكلة؟‬ ‫هذه‬ ‫لحل‬ ‫المطلوبة‬ ‫الربٌسٌة‬ ‫الخطوات‬ ً‫ه‬ ‫ما‬

‫الخطوات؟‬ ‫هذه‬ ‫تنفٌذ‬ ‫ترتٌب‬ ‫هو‬ ‫ما‬

‫ا‬ ‫أو‬ ‫المرارات‬ ً‫ه‬ ‫ما‬
‫المعلومات؟‬ ‫معالجة‬ ‫عند‬ ‫مراعاتها‬ ‫أحتاج‬ ً‫الت‬ ‫لشروط‬

‫مرات؟‬ ‫عدة‬ ‫أكررها‬ ‫ألن‬ ‫بحاجة‬ ‫تعلٌمات‬ ‫هنان‬ ‫هل‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
8
0202
‫م‬
–
5221
‫هـ‬
‫الخوارزمٌات‬ ‫تمثٌل‬ ‫طرق‬
:
-
‫طرق‬ ‫بعدة‬ ‫عنها‬ ‫التعبٌر‬ ‫أو‬ ‫الخوارزمٌة‬ ‫ثمثٌل‬ ‫ٌمكنن‬
:

‫خالل‬ ‫من‬ ‫األولى‬ ‫الطرٌمة‬
‫المبعثر‬ ‫الكالم‬
‫دون‬ ‫المحكٌة‬ ‫بلغتن‬ ‫المشكلة‬ ‫حل‬ ‫ٌصف‬ ‫الذي‬
‫الوصف‬ ً‫ف‬ ‫لواعد‬ ‫أي‬ ‫اتباع‬
.

‫ٌسمى‬ ‫ما‬ ‫خالل‬ ‫من‬ ‫الثانٌة‬ ‫الطرٌمة‬
‫الزابفة‬ ‫أو‬ ‫الوهمٌة‬ ‫الشٌفرة‬
pseudocode
ً‫وه‬
‫تلتزم‬ ‫ال‬ ‫لكنها‬ ‫البرمجة‬ ‫لغات‬ ‫كتابتها‬ ‫طرٌمة‬ ً‫ف‬ ً‫تحاك‬ ً‫الت‬ ‫التعلٌمات‬ ‫من‬ ‫مجموعة‬
‫البرمجة‬ ‫بمواعد‬
‫بها‬ ‫االلتزام‬ ‫ٌجب‬ ً‫الت‬
‫فعلٌة‬ ‫برمجٌة‬ ‫شٌفرات‬ ‫تكتب‬ ‫عندما‬
.

‫تسمى‬ ‫الثالثة‬ ‫الطرٌمة‬
‫االنسٌابٌة‬ ‫المخططات‬
Flowcharts
‫هو‬ ً‫االنسٌاب‬ ‫والمخطط‬ ،
‫غرض‬ ‫رمز‬ ‫لكل‬ ‫الرموز‬ ‫من‬ ‫مختلفة‬ ‫أنواع‬ ‫باستخدام‬ ‫ٌرسم‬ ‫للخوارزمٌة‬ ً‫رسوم‬ ‫تمثٌل‬
‫مناسب‬ ‫طرٌمة‬ ‫وٌعد‬ ‫الفهم‬ ‫سهلة‬ ‫صغٌرة‬ ‫مشاكل‬ ‫إلى‬ ‫الكبٌرة‬ ‫المشكلة‬ ‫تمسٌم‬ ً‫ف‬ ‫وهو‬ ‫معٌن‬
‫ة‬
‫التمنٌٌن‬ ‫غٌر‬ ‫األشخاص‬ ‫بٌن‬ ‫للتواصل‬
.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
9
0202
‫م‬
–
5221
‫هـ‬
،‫االنسٌابٌة‬ ‫المخططات‬ ‫رسم‬ ‫على‬ ‫تساعدن‬ ‫مساعدة‬ ‫برامج‬ ‫عدة‬ ‫تتوافر‬
‫مطالعة‬ ‫ٌمكنن‬ ‫وللمزٌد‬
ً‫انسٌاب‬ ‫مخطط‬ ‫رسم‬ ‫كٌفٌة‬ ‫ممال‬
Flowchart
‫باستخدام‬
.
PowerPoin
‫الٌومٌة‬ ‫حٌاتنا‬ ً‫ف‬ ‫الخوارزمٌة‬ ‫استخدام‬ ‫على‬ ‫مثال‬
:
-
‫منن‬ ‫طلب‬ ‫إذا‬ ‫المثال‬ ‫سبٌل‬ ‫على‬
‫المهوة‬ ‫صنع‬ ‫آلة‬ ‫مع‬ ‫التعامل‬ ‫طرٌمة‬ ‫توضح‬ ‫خوارزمٌة‬ ‫كتابة‬
ً‫كالتال‬ ‫اتباعها‬ ‫علٌن‬ ً‫الت‬ ‫الخطوات‬ ‫ستكون‬ ‫والشاي‬
:

‫المهوة‬ ‫أم‬ ‫الشاي‬ ‫شرب‬ ‫ٌرٌد‬ ‫الزبون‬ ‫كان‬ ‫إن‬ ‫معرفة‬

‫الكوب‬ ‫إلى‬ ‫المهوة‬ ‫أو‬ ‫الشاي‬ ‫إضافة‬

‫للكوب‬ ‫السكر‬ ‫إضافة‬ ‫ٌرٌد‬ ‫المستخدم‬ ‫كان‬ ‫إن‬ ‫معرفة‬

‫الكوب‬ ‫إلى‬ ‫السكر‬ ‫أضف‬ ‫نعم‬ ‫الجواب‬ ‫كان‬ ‫إذا‬

‫الكوب‬ ً‫ف‬ ‫الساخن‬ ‫الماء‬ ‫سكب‬
ً‫التال‬ ‫سنكتب‬ ‫الزابفة‬ ‫الشٌفرة‬ ‫باستخدام‬ ‫الخوارزمٌة‬ ‫هذه‬ ‫عن‬ ‫للتعبٌر‬
:
START;
/Would you like Tea or Coffee?/;
if tea {
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
01
0202
‫م‬
–
5221
‫هـ‬
Add Tea in cup;
} else {
Add Coffee in cup;
}
/Would you like Sugar?/;
if Sugar {
Add Sugar in cup;
}
Pour boiling water in cup
END;
ً‫التال‬ ‫المخطط‬ ‫سنرسم‬ ً‫االنسٌاب‬ ‫المخطط‬ ‫باستخدام‬ ‫عنها‬ ‫وللتعبٌر‬
:
‫الخوارزمٌات‬ ‫على‬ ‫أمثلة‬
:
-
‫على‬ ‫اإلضافٌة‬ ‫األمثلة‬ ‫بعض‬ ‫نستعرض‬ ‫دعنا‬ ‫الخوارزمٌات‬ ً‫ه‬ ‫ما‬ ‫أفضل‬ ‫بشكل‬ ‫لنفهم‬
‫رٌاضٌة‬ ‫مسابل‬ ‫لحل‬ ‫خوارزمٌات‬
‫ونعبر‬ ‫حلها‬ ‫وخطوات‬ ‫المختلفة‬ ‫أركانها‬ ‫على‬ ‫ونتعرف‬ ‫بسٌطة‬
‫المختلفة‬ ‫بالطرق‬ ‫عنها‬
.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
00
0202
‫م‬
–
5221
‫هـ‬
‫عدد‬ ‫مضروب‬ ‫لٌمة‬ ‫لحساب‬ ‫خوارزمٌة‬
‫المضروب‬ ‫الرٌاضٌات‬ ً‫ف‬
factorial
‫الصحٌح‬ ‫العدد‬ ً‫عامل‬ ‫أو‬
n
ً‫التال‬ ‫بالشكل‬ ‫عنه‬ ‫ٌعبر‬ ‫الذي‬
n!
‫من‬ ‫األصغر‬ ‫أو‬ ‫المساوٌة‬ ‫الطبٌعٌة‬ ‫األعداد‬ ‫كل‬ ‫جداء‬ ‫هو‬
n
‫الصفر‬ ‫عدا‬ ‫ما‬
‫خوارزمٌة‬ ‫ولكتابة‬
‫التالٌة‬ ‫الخطوات‬ ‫اتباع‬ ‫علٌنا‬ ‫الرٌاضٌة‬ ‫المسألة‬ ‫هذه‬ ‫تحل‬
:

‫الدخل‬
:
‫مضروبه‬ ‫حساب‬ ‫المطلوب‬ ‫الصحٌح‬ ‫العدد‬ ‫هو‬
n.

‫الخرج‬
:
‫المضروب‬ ‫ناتج‬ ‫هو‬
factorial

‫المتن‬
:
o
‫الخطوة‬
ٔ
‫العدد‬ ‫إدخال‬ :
n
‫مضروبه‬ ‫حساب‬ ‫المراد‬
o
‫الخطوة‬
ٕ
‫ولٌكن‬ ‫مساعد‬ ‫متغٌر‬ ‫تعرٌف‬ :
i
‫عن‬ ‫عبارة‬ ‫وهو‬
‫ٌأخذ‬ ‫صحٌح‬ ‫عدد‬
‫المطلوبة‬ ‫المٌمة‬ ‫حساب‬ ‫على‬ ‫وٌساعدنا‬ ‫نفسه‬ ‫والعدد‬ ‫الواحد‬ ‫بٌن‬ ‫متغٌرة‬ ‫لٌمة‬
.
o
‫الخطوة‬
ٖ
‫المتغٌر‬ ‫تهٌبة‬ :
factorial
،‫للمضروب‬ ‫المؤلتة‬ ‫المٌمة‬ ‫ٌمثل‬ ‫الذي‬
‫والمتغٌر‬
i
‫بالمٌمة‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫أثناء‬ ‫فٌها‬ ‫نحن‬ ً‫الت‬ ‫المرحلة‬ ‫ٌمثل‬ ‫الذي‬
‫نجعل‬ ‫أي‬ ‫واحد‬
factorial = 1
‫و‬
i = 1
o
‫الخطوة‬
ٗ
‫المتغٌر‬ ‫لٌم‬ ‫تعٌٌن‬ ‫إعادة‬ :
factorial
‫بالمٌمة‬
factorial*i
‫والمتغٌر‬
‫بالمٌمة‬
i+1
o
‫الخطوة‬
٘
‫الخطوة‬ ‫كرر‬ :
ٖ
‫المتغٌر‬ ‫لٌمة‬ ‫تصبح‬ ‫حتى‬
i
‫من‬ ‫ا‬ً‫م‬‫تما‬ ‫أكبر‬
n
o
‫الخطوة‬
ٙ
‫لٌمة‬ ‫وإعادة‬ ‫الخوارزمٌة‬ ‫بإٌماف‬ ‫لم‬ :
factorial
‫مضروب‬ ‫تمثل‬ ً‫الت‬
‫العدد‬
n
‫توضح‬ ‫التالٌة‬ ‫الصورة‬
‫عدد‬ ‫مضروب‬ ‫حساب‬ ‫خوارزمٌة‬ ‫لحل‬ ً‫االنسٌاب‬ ‫المخطط‬ ‫رسم‬ ‫طرٌمة‬
:
‫أسفل‬ ‫التعلٌمات‬ ‫لسم‬ ً‫ف‬ ‫إٌاها‬ ‫شاركنا‬ ‫المسألة؟‬ ‫هذه‬ ‫لحل‬ ‫أخرى‬ ‫أسالٌب‬ ‫أو‬ ‫ا‬ً‫ل‬‫طر‬ ‫تعرف‬ ‫هل‬
‫الممال‬
.
‫أعداد‬ ‫ثالثة‬ ‫بٌن‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫على‬ ‫للعثور‬ ‫خوارزمٌة‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
02
0202
‫م‬
–
5221
‫هـ‬
‫طرٌمة‬ ‫أو‬ ‫خوارزمٌة‬ ‫من‬ ‫بأكثر‬ ‫المسألة‬ ‫هذه‬ ‫حل‬ ‫سنكتب‬
:
‫طرٌمة‬
ٔ
:

‫الدخل‬
: 3
‫أرلام‬
a
‫و‬
b
‫و‬
c

‫الخرج‬
:
‫بٌنها‬ ‫من‬ ‫األكبر‬ ‫العدد‬
a
‫أو‬
b
‫أو‬
c

‫المتن‬
:
o
‫الخطوة‬
ٔ
‫المتغٌرات‬ ً‫ف‬ ‫وخزنها‬ ‫الثالثة‬ ‫األرلام‬ ‫أدخل‬ :
a
‫و‬
b
‫و‬
c
‫على‬
ً‫التوال‬
.
o
‫الخطوة‬
ٕ
‫األول‬ ‫الرلم‬ ‫كون‬ ‫من‬ ‫تحمك‬ :
a
ً‫الثان‬ ‫الرلم‬ ‫من‬ ‫أكبر‬
b
‫الثالث‬ ‫و‬
c
‫أن‬ ‫اطبع‬ ‫عندها‬
a
‫التنفٌذ‬ ً‫وأنه‬ ‫الكل‬ ‫بٌن‬ ‫األكبر‬ ‫العدد‬ ‫هو‬
o
‫الخطوة‬
ٖ
‫كون‬ ‫من‬ ‫تحمك‬ :
b
‫من‬ ‫أكبر‬
a
‫و‬
c
‫أن‬ ‫اطبع‬ ‫عندها‬
b
‫العدد‬ ‫هو‬
‫التنفٌذ‬ ً‫وأنه‬ ‫الكل‬ ‫بٌن‬ ‫األكبر‬
o
‫الخطوة‬
ٗ
‫كون‬ ‫من‬ ‫تحمك‬ :
c
‫من‬ ‫أكبر‬
a
‫و‬
b
‫أن‬ ‫اطبع‬ ‫عندها‬
c
‫العدد‬ ‫هو‬
‫التنفٌذ‬ ً‫وأنه‬ ‫الكل‬ ‫بٌن‬ ‫األكبر‬
‫عن‬ ‫للتعبٌر‬ ‫الزابف‬ ‫الكود‬
‫بٌن‬ ‫عدد‬ ‫أكبر‬ ‫خوارزمٌة‬
ٖ
‫أعداد‬
:
Step-1 Start
Step-2 Read three numbers a,b,c
Step-3 If a>b then go to step-5
Step-4 IF b>c THEN
print b is largest
ELSE
print c is largest
ENDIF
GO TO Step-6
Step-5 IF a>c THEN
print a is largest
ELSE
print c is largest
ENDIF
Step-6 Stop
ً‫ٌل‬ ‫كما‬ ‫هو‬ ‫الخوارزمٌة‬ ‫عن‬ ‫للتعبٌر‬ ً‫االنسٌاب‬ ‫والمخطط‬
:
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
03
0202
‫م‬
–
5221
‫هـ‬
‫العدد‬ ‫حول‬ ‫لمرار‬ ‫نصل‬ ‫حتى‬ ‫الشروط‬ ‫من‬ ‫الكثٌر‬ ‫اختبار‬ ‫تتطلب‬ ‫أعاله‬ ‫الطرٌمة‬ ‫أن‬ ‫الحظت‬ ‫لعلن‬
‫أبسط‬ ‫بطرٌمة‬ ‫حلها‬ ‫نحاول‬ ‫دعنا‬ ،‫الثالثة‬ ‫األعداد‬ ‫بٌن‬ ‫من‬ ‫األكبر‬
.
‫أعداد‬ ‫ثالثة‬ ‫ممارنة‬ ‫خوارزمٌة‬ ‫فإن‬ ‫تالحظ‬ ‫كما‬
‫بٌن‬ ‫من‬ ‫األكبر‬ ‫العدد‬ ‫حول‬ ‫لمرار‬ ‫نصل‬ ‫حتى‬
‫لدٌنا‬ ‫كان‬ ‫لو‬ ‫ماذا‬ ‫ولكن‬ ،‫عدد‬ ‫كل‬ ‫على‬ ‫مرتٌن‬ ‫والمرور‬ ‫خطوتٌن‬ ‫إجراء‬ ‫تطلبت‬ ‫الثالثة‬ ‫األعداد‬
ٔٓ
‫لذا‬ ‫وتعمده‬ ‫الحل‬ ‫زمن‬ ‫وسٌزاد‬ ‫األعداد‬ ‫على‬ ‫المرور‬ ‫ومرات‬ ‫الخطوات‬ ‫ستزداد‬ ‫أكثر‬ ‫أو‬ ‫أعداد‬
‫مرة‬ ‫المرور‬ ‫من‬ ‫تمكننا‬ ‫أفضل‬ ‫بطرٌمة‬ ‫نفكر‬ ‫أن‬ ‫األفضل‬ ‫من‬
‫العدد‬ ‫ومعرفة‬ ‫األعداد‬ ‫على‬ ‫واحدة‬
‫بٌنها‬ ‫من‬ ‫األكبر‬
.
‫أول‬ ‫أن‬ ‫ونعتبر‬ ‫اﻵخر‬ ‫تلو‬ ‫ًا‬‫د‬‫واح‬ ‫نمرأها‬ ‫ثم‬ ‫المصفوفة‬ ‫مثل‬ ‫واحدة‬ ‫بنٌة‬ ً‫ف‬ ‫األعداد‬ ‫نخزن‬ ‫أن‬ ‫ٌمكن‬
‫كان‬ ‫فإن‬ ‫مباشرة‬ ‫لبله‬ ‫بالذي‬ ‫نمارنه‬ ‫ًا‬‫د‬ٌ‫جد‬ ‫ًا‬‫د‬‫عد‬ ‫لرأنا‬ ‫وكلما‬ ‫األعداد‬ ‫كل‬ ‫بٌن‬ ‫من‬ ‫األكبر‬ ‫هو‬ ‫عدد‬
‫كا‬ ‫وإن‬ ‫بٌنهما‬ ‫نبدل‬ ‫منه‬ ‫أكبر‬
‫الطرٌمة‬ ‫هذه‬ ‫لنطبك‬ .‫إجراء‬ ‫بأي‬ ‫نموم‬ ‫ال‬ ‫ٌساوٌه‬ ‫أو‬ ‫منه‬ ‫أصغر‬ ‫ن‬
‫أعداد‬ ‫ثالثة‬ ‫بٌن‬ ‫من‬ ‫األكبر‬ ‫العدد‬ ‫إلٌجاد‬
‫طرٌمة‬
ٕ
:
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
04
0202
‫م‬
–
5221
‫هـ‬

‫الدخل‬
: 3
‫أرلام‬
a
‫و‬
b
‫و‬
c

‫الخرج‬
: max
‫األكبر‬ ‫العدد‬ ‫ٌمثل‬ ‫الذي‬

‫المتن‬
:
o
‫الخطوة‬
ٔ
ً‫ف‬ ‫وخزنها‬ ‫الثالثة‬ ‫األعداد‬ ‫أدخل‬ :
a
‫و‬
b
‫و‬
c
ً‫التوال‬ ‫على‬
o
‫الخطوة‬
ٖ
‫افترض‬ :
‫األول‬ ‫العدد‬ ‫أن‬
a
‫األكبر‬ ‫هو‬
max = a
o
‫الخطوة‬
ٗ
ً‫الثان‬ ‫العدد‬ ‫كان‬ ‫إذا‬ :
b
‫من‬ ‫أكبر‬
max
‫اجعل‬
max = b
o
‫الخطوة‬
٘
‫الثالث‬ ‫العدد‬ ‫كان‬ ‫إذا‬ :
c
‫من‬ ‫أكبر‬ ‫من‬ ‫أكبر‬
max
‫اجعل‬
max = c
o
‫الخطوة‬
ٙ
‫لٌمة‬ ‫اعرض‬ :
max
‫بٌن‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫إلٌجاد‬ ‫الخوارزمٌة‬ ‫هذه‬ ‫عن‬ ‫للتعبٌر‬ ‫الزابف‬ ‫الكود‬
ٖ
‫أعداد‬
:
Step-1 Start
Step-2 Read three numbers: a,b,c
Step-3 max = a
Step-4 IF b > max THEN
max = b
ENDIF
Step-5 IF c > max THEN
max = c
ENDIF
Step-6 print max
Step-7 Stop
ً‫ٌل‬ ‫كما‬ ‫هو‬ ‫الخوارزمٌة‬ ‫عن‬ ‫للتعبٌر‬ ً‫االنسٌاب‬ ‫والمخطط‬
:
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
05
0202
‫م‬
–
5221
‫هـ‬
‫التباس‬
ً‫ة‬‫عاد‬ ‫البشر‬ ‫نحن‬ ‫نتبعه‬ ‫ما‬ ً‫ه‬ ‫الطرٌمة‬ ‫هذه‬
‫أعداد‬ ‫مجموعة‬ ‫من‬ ‫رلم‬ ‫أكبر‬ ‫معرفة‬ ‫منن‬ ‫طلب‬ ‫فإن‬
‫ذاكرتن‬ ً‫ف‬ ‫خزن‬ُ‫ت‬( ‫وتحفظ‬ ‫النهاٌة‬ ‫وحتى‬ ‫البداٌة‬ ‫من‬ ‫علٌها‬ ‫فستمر‬
)
‫معن‬ ‫ٌمر‬ ‫الذي‬ ‫األكبر‬ ‫العدد‬
‫النهاٌة‬ ً‫ف‬ ‫لتموله‬
.
‫حولها‬ ‫لنتنالش‬ ‫إٌاها‬ ‫تشاركنا‬ ‫أن‬ ‫ٌمكن‬ ‫المسألة؟‬ ‫هذه‬ ‫لحل‬ ‫أفضل‬ ‫أخرى‬ ‫خوارزمٌة‬ ‫لدٌن‬ ‫هل‬
.
‫و‬ ‫مرة‬ ‫مررنا‬ ‫فمد‬ ‫تالحظ‬ ‫كما‬
‫لدٌنا‬ ‫كان‬ ‫لو‬ ‫ٌختلف‬ ‫لن‬ ‫وهذا‬ ،‫أكبر‬ ‫أٌها‬ ‫وعرفنا‬ ‫األعداد‬ ‫على‬ ‫احدة‬
‫تحوي‬ ‫لابمة‬
ٔٓٓ
‫تعمٌد‬ ‫أو‬ ‫الخوارزمٌة‬ ‫بكفاءة‬ ‫ٌسمى‬ ‫ببساطته‬ ‫المفهوم‬ ‫هذا‬ ،‫أكثر‬ ‫أو‬ ‫عدد‬
‫برمز‬ ‫إلٌه‬ ‫ٌشار‬ ‫والذي‬ ‫الخوارزمٌة‬
Big O
‫ٌتناول‬ ‫موضوع‬ ‫أي‬ ً‫ف‬ ‫ا‬ً‫م‬‫دو‬ ‫وستجده‬
‫أ‬ ‫الخوارزمٌات‬ ‫كتابة‬ ‫شروط‬ ‫من‬ ‫ألن‬ ،‫الخوارزمٌات‬
‫ا‬ً‫ن‬‫ممك‬ ‫ًا‬‫د‬ٌ‫تعم‬ ‫وألل‬ ‫كفاءة‬ ‫ذات‬ ‫تكون‬ ‫ن‬
.
‫وكٌفٌة‬ ‫بكفاءة‬ ‫بعضها‬ ‫عن‬ ‫تتمٌز‬ ‫ولكن‬ ‫نفسه‬ ‫الصحٌح‬ ‫الخرج‬ ‫النهاٌة‬ ً‫ف‬ ً‫تعط‬ ‫الخوارزمٌات‬ ‫فكل‬
‫دراسة‬ ‫وضرورة‬ ً‫المنطم‬ ‫التفكٌر‬ ‫أهمٌة‬ ‫تبرز‬ ‫وهنا‬ ،‫الصحٌح‬ ‫للخرج‬ ‫الوصول‬ ‫وسرعة‬
‫و‬ ‫الخوارزمٌات‬
‫المعطٌات‬ ‫بنى‬
‫أي‬ ‫لحل‬ ‫كفاءة‬ ‫األكثر‬ ‫الحل‬ ‫لمعرفة‬
‫تواجهها‬ ‫برمجٌة‬ ‫مسألة‬
‫الخوارزمٌات‬ ‫"تحلٌل‬ ‫فمرة‬ ً‫ف‬ ‫ًا‬ٌ‫تال‬ ‫بالتفصٌل‬ ‫الموضوع‬ ‫هذا‬ ‫عن‬ ‫وسنتحدث‬
".
ً‫حاسوب‬ ‫برنامج‬ ‫إلى‬ ‫الخوارزمٌة‬ ‫تحوٌل‬
:
-
‫لالستخدام‬ ‫لابلة‬ ‫غٌر‬ ‫الوالع‬ ً‫ف‬ ‫لكنها‬ ‫كبشر‬ ‫لنا‬ ‫وواضحة‬ ‫مفهومة‬ ‫الخوارزمٌة‬ ‫تمثٌل‬ ‫طرق‬ ‫إن‬
‫خطط‬ ‫الخوارزمٌات‬ ّ‫ألن‬ ،‫الحاسوب‬ ‫على‬ ‫والتطبٌك‬
‫المشاكل‬ ‫لحل‬ ‫دة‬ّ‫ومجر‬ ‫عامة‬
.
‫بإحدى‬ ‫عنها‬ ‫التعبٌر‬ ‫أو‬ ‫ترجمتها‬ ‫علٌنا‬ ‫فسٌكون‬ ،‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫الخوارزمٌة‬ ‫استخدام‬ ‫أردنا‬ ‫فإن‬
‫البرمجة‬ ‫لغات‬
‫تحمٌك‬ ‫ى‬ّ‫م‬‫س‬ُ‫ت‬ ‫العملٌة‬ ‫هذه‬ ،‫المطلوبة‬ ‫النتابج‬ ‫لنا‬ ‫وٌعٌد‬ ‫الحاسوب‬ ‫ٌفهمها‬ ً‫ك‬
‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫أو‬ ‫الخوارزمٌة‬
implementation
ٌ‫تحو‬ ‫عن‬ ‫وٌنتج‬
‫إحدى‬ ‫إلى‬ ‫الخوارزمٌة‬ ‫ل‬
‫للتنفٌذ‬ ‫لابلة‬ ‫برمجٌة‬ ‫شٌفرة‬ ‫البرمجة‬ ‫لغات‬
execution
‫الحاسوب‬ ‫على‬
.
‫من‬ ‫عدد‬ ‫أكبر‬ ‫إٌجاد‬ ‫تحاول‬ ً‫والت‬ ‫ا‬ً‫ف‬‫آن‬ ‫ذكرناها‬ ً‫الت‬ ‫الخوارزمٌة‬ ‫سنحول‬ :‫ذلن‬ ‫على‬ ً
‫مثاال‬ ‫لنضرب‬
‫الحاسوب‬ ‫على‬ ‫تنفٌذها‬ ‫لنا‬ ‫ى‬ّ‫ن‬‫ٌتس‬ ‫حتى‬ ‫باٌثون‬ ‫بلغة‬ ‫مكتوب‬ ‫برنامج‬ ‫إلى‬ ‫أعداد‬ ‫ثالثة‬ ‫بٌن‬
.
‫باٌثون‬ ‫لغة‬ ً‫ف‬ ‫أعداد‬ ‫ثالثة‬ ‫بٌن‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫إٌجاد‬ ‫خوارزمٌة‬ ‫تنفٌذ‬
‫أعداد‬ ‫ثالثة‬ ‫بٌن‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫إلٌجاد‬ ‫باٌثون‬ ‫برنامج‬
a = int(input('a= '))
b = int(input('b= '))
c = int(input('c= '))
max = a
if b > max :
max = b
if c > max :
max = c
print(max, "
‫الع‬ ‫هو‬
‫األكبر‬ ‫دد‬
")
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
06
0202
‫م‬
–
5221
‫هـ‬
‫بالطبع‬ ‫ٌمكنن‬ ‫كما‬ .‫متولع‬ ‫هو‬ ‫كما‬ ‫وستعمل‬ ‫حاسوب‬ ّ‫ي‬‫أ‬ ‫على‬ ‫الشٌفرة‬ ‫هذه‬ ‫تنفٌذ‬ ‫اﻵن‬ ‫ٌمكنن‬
‫مثل‬ ‫ترٌدها‬ ‫أخرى‬ ‫برمجة‬ ‫لغة‬ ّ‫ي‬‫بأ‬ ‫الخوارزمٌة‬ ‫تحمٌك‬
C
‫أو‬
C++‎
‫أو‬ ‫سكرٌبت‬ ‫جافا‬ ‫أو‬ ‫جافا‬ ‫أو‬
R …
‫إلخ‬
.
‫ٌطلب‬ ً‫حاسوب‬ ‫برنامج‬ ‫إلى‬ ‫السابمة‬ ‫الخوارزمٌة‬ ‫تحوٌل‬ ‫تجرب‬ ‫أن‬ ‫رأٌن‬ ‫ما‬ ‫تمرٌن‬
‫المستخدم‬ ‫من‬
‫مثل‬ ‫فراغات‬ ‫بٌنها‬ ‫تفصل‬ ‫أعداد‬ ‫مجموعة‬ ‫إدخال‬
ٗ
9
4
7
ٔٓ
‫الخوارزمٌة‬ ‫بتلن‬ ‫البرنامج‬ ‫لٌحللها‬
‫التكرار‬ ‫حلمات‬ ‫استعمال‬ ‫ستحاول‬ :‫(مساعدة‬ ‫بٌنها‬ ‫من‬ ‫األكبر‬ ‫العدد‬ ً‫وٌعط‬
loops)
‫الخوارزمٌات‬ ‫استخدام‬ ‫مجاالت‬
:
-
‫علماء‬ ‫لبل‬ ‫من‬ ‫السنوات‬ ‫آالف‬ ‫طوال‬ ‫ستخدم‬ُ‫ت‬ ‫الخوارزمٌات‬ ‫كانت‬
‫المعادالت‬ ‫لحل‬ ‫الرٌاضٌات‬
ً‫ء‬‫ابتدا‬ ‫الرٌاضٌات‬ ‫من‬ ‫ٌتجزأ‬ ‫ال‬ ‫جزء‬ ‫فالخوارزمٌات‬ .‫هذا‬ ‫ٌومنا‬ ‫إلى‬ ‫تزال‬ ‫وما‬ ‫الرٌاضٌة‬ ‫والمسابل‬
‫المنطمٌة‬ ‫البراهٌن‬ ‫كتابة‬ ‫وحتى‬ ،‫الجبرٌة‬ ‫المعادالت‬ ‫حل‬ ‫من‬
.
‫فالحاسوب‬ ،‫الحاسب‬ ‫وعلوم‬ ‫البرمجة‬ ‫مجال‬ ً‫ف‬ ‫واسع‬ ‫نطاق‬ ‫على‬ ‫الٌوم‬ ‫الخوارزمٌات‬ ‫وتستخدم‬
‫سوى‬ ‫لٌس‬
‫وٌحللونه‬ ‫المطلوب‬ ‫ٌفهمون‬ ‫الذٌن‬ ،‫البشر‬ ‫عكس‬ ‫على‬ ‫وسرعة‬ ‫بكفاءة‬ ‫األوامر‬ ‫تنفذ‬ ‫آلة‬
‫تبسٌط‬ ‫إلى‬ ‫تحتاج‬ ،‫لذلن‬ .‫الحاسوب‬ ‫بواسطة‬ ‫ٌنفذونها‬ ‫ثم‬ ‫الخوارزمٌات‬ ‫لوضع‬ ‫بأدمغتهم‬ ‫وٌفكرون‬
‫ممكن‬ ‫أداء‬ ‫وبأفضل‬ ‫بحذافٌرها‬ ‫لن‬ ‫لٌنفذها‬ ‫للحاسوب‬ ‫خوارزمٌة‬ ‫ووضع‬
.
‫التش‬ ‫وأنظمة‬ ‫والتطبٌمات‬ ‫البرامج‬ ‫وكل‬
‫أجل‬ ‫من‬ ‫وتستخدمها‬ ‫الخوارزمٌات‬ ‫على‬ ‫تعتمد‬ ‫غٌل‬
‫معالجة‬
‫البٌانات‬
‫مجاالت‬ ‫عدة‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫تستخدم‬ ‫كما‬ ‫العمل‬ ‫مشكالت‬ ّ‫ل‬‫وح‬ ‫الحسابات‬ ‫وإجراء‬
ً‫ف‬ ‫الٌوم‬ ‫تطبك‬ ً‫وه‬ ‫الحٌاة‬ ً‫مناح‬ ‫من‬ ‫وغٌرها‬ ‫وااللتصاد‬ ‫اللغات‬ ‫وتحلٌل‬ ‫الفٌزٌاء‬ ‫مثل‬ ‫أخرى‬
‫األمثلة‬ ‫أبرز‬ ‫ومن‬ ‫حولنا‬ ‫من‬ ‫نستخدمه‬ ‫شًء‬ ‫كل‬
‫حٌاتنا‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫استخدام‬ ‫مجاالت‬ ‫على‬
‫نذكر‬ ‫الٌومٌة‬
:

ً‫االجتماع‬ ‫التواصل‬ ‫موالع‬ ‫على‬ ‫تراه‬ ‫فٌما‬ ‫تتحكم‬ ً‫الت‬ ً‫االجتماع‬ ‫التواصل‬ ‫خوارزمٌات‬
‫خاصتن‬

‫المستخدمون‬ ‫سٌكتبه‬ ‫بما‬ ‫وتتنبأ‬ ‫البحث‬ ‫عملٌات‬ ‫تحسن‬ ً‫الت‬ ‫البحث‬ ‫محركات‬ ‫خوارزمٌات‬
.

‫ا‬ ‫تمنٌات‬ ‫باستخدام‬ ‫الجرابم‬ ‫كشف‬ ‫خوارزمٌات‬
‫التنبؤٌة‬ ‫الخرابط‬ ‫ورسم‬ ‫الوجه‬ ‫على‬ ‫لتعرف‬
‫لمنعها‬ ‫اإلجراءات‬ ‫واتخاذ‬ ‫الجرابم‬ ‫لتولع‬
.

‫ستخدم‬ُ‫ت‬‫و‬ ‫مفهوم‬ ‫غٌر‬ ‫نص‬ ‫إلى‬ ‫مفهوم‬ ‫نص‬ ‫بتحوٌل‬ ‫تموم‬ ً‫الت‬ ‫التشفٌر‬ ‫خوارزمٌات‬
‫إلٌهم‬ ‫وجهت‬ ‫الذٌن‬ ‫األشخاص‬ ّ
‫إال‬ ‫ٌفهمها‬ ‫ال‬ ‫بحٌث‬ ‫المهمة‬ ‫البٌانات‬ ‫لحماٌة‬
.

‫الح‬ ‫ودرجة‬ ‫الطمس‬ ‫بحالة‬ ‫التنبؤ‬ ‫خوارزمٌات‬
ً‫ف‬ ‫تفٌد‬ ً‫وه‬ ‫السابمة‬ ‫البٌانات‬ ‫بمساعدة‬ ‫رارة‬
‫والحروب‬ ‫واالتصاالت‬ ‫والطٌران‬ ‫الزراعة‬ ‫أهمها‬ ‫مجاالت‬ ‫عدة‬
.

‫طرٌمة‬ ‫بأفضل‬ ‫وجدولتها‬ ‫الحافالت‬ ‫وصول‬ ‫مواعٌد‬ ‫تحدٌد‬ ‫خوارزمٌات‬
.

‫وجهتم‬ ‫على‬ ‫العثور‬ ‫على‬ ‫السابمٌن‬ ‫لمساعدة‬ ‫المتاحة‬ ‫السٌارات‬ ‫موالف‬ ‫تحدٌد‬ ‫خوارزمٌات‬
‫وسهولة‬ ‫بسرعة‬
.

ٌ‫خوارزم‬
‫طرٌك‬ ‫أفضل‬ ‫إلى‬ ‫المركبات‬ ‫توجٌه‬ ‫ات‬
.

‫الصوارٌخ‬ ‫مسارات‬ ‫تعدٌل‬ ‫خوارزمٌات‬
.
‫تلعب‬ ً‫الت‬ ‫شابه‬ ‫وما‬ ‫واإلعالم‬ ‫والعلوم‬ ‫االلتصاد‬ ً‫ف‬ ‫المختلفة‬ ‫الحٌاة‬ ‫مجاالت‬ ‫من‬ ‫الكثٌر‬ ‫وغٌرها‬
‫ملٌون‬ ‫لدرها‬ ‫جابزة‬ ‫نٌتفلٌكس‬ ‫عرضت‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ،‫ًا‬ٌ‫وحٌو‬ ً
‫فعاال‬ ‫ا‬ً‫دور‬ ‫الخوارزمٌات‬ ‫فٌها‬
‫ٌطو‬ ‫لمن‬ ‫دوالر‬
‫وٌجعلها‬ ‫الزوار‬ ‫على‬ ‫والمسلسالت‬ ‫األفالم‬ ‫التراح‬ ً‫ف‬ ‫المستخدمة‬ ‫خوارزمٌتها‬ ‫ر‬
‫بنسبة‬ ‫أفضل‬
10%.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
07
0202
‫م‬
–
5221
‫هـ‬
‫الجٌدة‬ ‫الخوارزمٌة‬ ‫مواصفات‬
:
-
‫جٌدة؟‬ ‫الخوارزمٌة‬ ‫ٌجعل‬ ‫الذي‬ ‫وما‬ ‫كذلن؟‬ ‫لٌست‬ ‫وأخرى‬ ‫جٌدة‬ ‫خوارزمٌة‬ ‫هنان‬ ‫وهل‬ ‫تتساءل‬ ‫لد‬
‫فكذ‬ ،‫تنجح‬ ‫وال‬ ‫سٌبة‬ ‫طبخة‬ ‫وصفات‬ ‫هنان‬ ّ‫أن‬ ‫فكما‬ ‫نعم‬ ‫هو‬ ‫والجواب‬
‫سٌبة‬ ‫خوارزمٌات‬ ‫هنان‬ ‫لن‬
،‫خوارزمٌة‬ ‫والتعلٌمات‬ ‫الخطوات‬ ‫من‬ ‫متتابعة‬ ‫سلسلة‬ ‫كل‬ ‫فلٌست‬ ،‫للتطبٌك‬ ‫تصلح‬ ‫وال‬ ‫عملٌة‬ ‫وغٌر‬
‫مثل‬ ‫للتطبٌك‬ ‫ولابلة‬ ‫عملٌة‬ ‫تجعلها‬ ‫خاصة‬ ‫شروط‬ ‫فٌها‬ ‫تتوفر‬ ‫أن‬ ‫البد‬ ‫بل‬
:

‫الوضوح‬
:
‫وال‬ ‫ومفهومة‬ ‫واضحة‬ ‫الخوارزمٌة‬ ‫خطوات‬ ‫من‬ ‫خطوة‬ ‫كل‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬
‫فٌها‬ ‫لبس‬
.

‫المحدودٌة‬
:
ً‫ف‬ ‫ذ‬ّ‫ف‬‫ن‬ُ‫ت‬‫و‬ ،‫منتهٌة‬ ‫خطواتها‬ ‫تكون‬ ‫أن‬ ‫أي‬ ،‫محدودة‬ ‫الخوارزمٌة‬ ‫تكون‬ ‫أن‬ ‫ٌجب‬
‫أن‬ ‫الخطوات‬ ‫إحدى‬ ‫بإمكان‬ ‫كان‬ ‫أو‬ ،‫منته‬ ‫غٌر‬ ‫الخطوات‬ ‫عدد‬ ‫كان‬ ‫فإن‬ .‫منتهٌة‬ ‫زمنٌة‬ ‫مدة‬
‫خوارزمٌة‬ ‫لٌست‬ ‫ها‬ّ‫ن‬‫فإ‬ ،‫منتهٌة‬ ‫ال‬ ‫مدة‬ ‫تستغرق‬
.

‫والوالعٌة‬ ‫البساطة‬
:
‫للت‬ ‫لابلة‬ ‫الخوارزمٌة‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬
‫والتمنٌات‬ ‫بالموارد‬ ‫طبٌك‬
‫غامضة‬ ‫أو‬ ‫مستمبلٌة‬ ‫تمنٌة‬ ‫على‬ ‫تعتمد‬ ‫أن‬ ً‫ٌنبغ‬ ‫وال‬ ،‫المتاحة‬
.

‫التطبٌك‬ ‫لابلٌة‬
:
‫الخوارزمٌة‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬ ‫ال‬ ‫أي‬ ‫البرمجة‬ ‫لغات‬ ‫عن‬ ‫االستماللٌة‬ ً‫ٌعن‬
‫العمل‬ ‫على‬ ‫تركز‬ ‫بحٌث‬ ‫ة‬ّ‫م‬‫وعا‬ ‫مجردة‬ ‫تكون‬ ‫أن‬ ‫وٌجب‬ ،‫محددة‬ ‫برمجة‬ ‫بلغة‬ ‫مرتبطة‬
ً
‫بدال‬ ‫للبرنامج‬ ً‫األساس‬
‫ٌمكن‬ ‫وبعدها‬ ‫معٌنة‬ ‫برمجة‬ ‫لغة‬ ‫خصابص‬ ‫على‬ ‫التركٌز‬ ‫من‬
‫برمجة‬ ‫لغة‬ ‫أي‬ ‫عبر‬ ‫تطبٌمها‬
.

‫النتابج‬ ‫صحة‬
:
ً‫ف‬ ‫أخطاء‬ ‫دون‬ ‫منها‬ ‫المطلوبة‬ ‫المهمة‬ ‫بتنفٌذ‬ ‫الخوارزمٌة‬ ‫تموم‬ ‫أن‬ ‫ٌجب‬
‫النتابج‬ ً‫ف‬ ‫دلة‬ ‫عدم‬ ‫أو‬ ‫التنفٌذ‬
.

‫والفعالٌة‬ ‫الكفاءة‬
:
‫بأ‬ ‫المشكلة‬ ‫لحل‬ ‫الطرق‬ ‫أفضل‬ ‫الخوارزمٌة‬ ‫تستخدم‬ ‫أن‬ ً‫ٌنبغ‬
‫ولت‬ ‫سرع‬
‫بالتعمٌد‬ ‫ٌعرف‬ ‫ما‬ ‫أو‬ ‫ذاكرة‬ ‫مساحة‬ ‫وألل‬ ‫للخوارزمٌة‬ ً‫الزمان‬ ‫بالتعمٌد‬ ‫ٌعرف‬ ‫ما‬ ‫أو‬ ‫تنفٌذ‬
‫للخوارزمٌة‬ ً‫المكان‬
.
‫الخوارزمٌات؟‬ ‫لتعلم‬ ‫الرٌاضٌات‬ ‫معرفة‬ ‫إلى‬ ‫أحتاج‬ ‫هل‬
‫مشاكل‬ ‫لحل‬ ‫ا‬ً‫س‬‫أسا‬ ‫ستخدم‬ُ‫ت‬ ‫فالخوارزمٌات‬ ، ‫أكثر‬ ً‫إجابت‬ ‫أوضح‬ ً‫وك‬ ،‫وال‬ ‫نعم‬ ‫هو‬ ‫الجواب‬
‫متوس‬ ‫مثل‬ ،‫حسابٌة‬
‫طرٌمة‬ ‫أسهل‬ ‫أو‬ ،‫شعبة‬ ً‫ف‬ ‫نمطتٌن‬ ‫بٌن‬ ‫مسار‬ ‫ألصر‬ ‫أو‬ ،‫المٌم‬ ‫من‬ ‫مجموعة‬ ‫ط‬
‫من‬ ‫لدر‬ ‫على‬ ‫تنطوي‬ ‫المشاكل‬ ‫هذه‬ ‫كل‬ .‫مصفوفة‬ ‫عناصر‬ ‫ترتٌب‬ ‫أو‬ ،ً‫هندس‬ ‫شكل‬ ‫لرسم‬
‫نعم‬ ‫هو‬ ‫فالجواب‬ ‫لذلن‬ ،‫األساسٌة‬ ‫الرٌاضٌات‬
.
‫الرٌاض‬ ً‫ف‬ ‫جامعٌة‬ ‫شهادة‬ ‫لن‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬ ‫ه‬ّ‫ن‬‫أ‬ ‫الرٌاضٌات‬ ‫بمعرفة‬ ‫تمصد‬ ‫كنت‬ ‫إن‬ ‫لكن‬
‫أو‬ ،‫ٌات‬
‫تتطلب‬ ‫ال‬ ‫الخوارزمٌات‬ ّ‫ألن‬ ‫ال‬ ‫سٌكون‬ ‫فالجواب‬ ،‫بها‬ ‫متوسطة‬ ‫حتى‬ ‫أو‬ ‫عمٌمة‬ ‫معرفة‬ ‫لن‬ ‫تكون‬
‫الرٌاضٌات‬ ‫بمفاهٌم‬ ‫عمٌمة‬ ‫معرفة‬
.
‫فممدار‬ ‫لذلن‬ ،‫الحسابٌة‬ ‫والمسابل‬ ‫المشاكل‬ ‫لحل‬ ‫عامة‬ ‫طرق‬ ً‫ه‬ ‫الخوارزمٌات‬ ّ‫أن‬ ‫تذكر‬
،‫حلها‬ ‫ترٌد‬ ً‫الت‬ ‫المشكلة‬ ‫بنوع‬ ‫ٌتعلك‬ ‫تحتاجها‬ ً‫الت‬ ‫الرٌاضٌات‬
،‫معمدة‬ ‫مشكلة‬ ‫حل‬ ‫ترٌد‬ ‫كنت‬ ‫إن‬
‫متمدمة‬ ‫معرفة‬ ‫إلى‬ ‫وتحتاج‬ ‫معمدة‬ ‫ستكون‬ ‫الخوارزمٌة‬ ّ‫أن‬ ‫األرجح‬ ‫فعلى‬ ،‫بالمناخ‬ ‫التنبؤ‬ ‫مثل‬
ً‫الت‬ ‫المسابل‬ ‫معظم‬ ّ‫أن‬ ‫إذ‬ ،‫الخوارزمٌات‬ ‫تعلم‬ ‫عن‬ ‫ّن‬‫د‬‫وٌص‬ ‫ٌخٌفن‬ ‫هذا‬ ‫تدع‬ ‫ال‬ ‫لكن‬ ‫بالرٌاضٌات‬
‫الر‬ ‫بأساسٌات‬ ‫بسٌطة‬ ‫معرفة‬ ‫إلى‬ ‫إال‬ ‫تحتاج‬ ‫ال‬ ‫مشاكل‬ ً‫ه‬ ‫واجهها‬ُ‫ت‬‫س‬
‫العملٌات‬ ‫مثل‬ ،‫ٌاضٌات‬
‫البسٌطة‬ ‫الحسابٌة‬
.
‫تفهم‬ ‫دمت‬ ‫فما‬ ،‫الخوارزمٌات‬ ‫تتعلم‬ ً‫لك‬ ‫الرٌاضٌات‬ ‫تعلم‬ ‫إلى‬ ‫تحتاج‬ ‫ال‬ ‫أنن‬ ‫هو‬ ‫المول‬ ‫خالصة‬
‫مثل‬ ،‫البسٌطة‬ ‫المفاهٌم‬ ‫وبعض‬ ،‫والضرب‬ ‫الجمع‬ ‫مثل‬ ،‫البسٌطة‬ ‫الحسابٌة‬ ‫العملٌات‬ ‫تجري‬ ‫كٌف‬
‫تتعلم‬ ‫أن‬ ‫فٌمكنن‬ ‫المعادالت‬ ‫حل‬ ‫وطرق‬ ‫والدوال‬ ‫المجموعات‬
‫بسهولة‬ ‫الخوارزمٌات‬
.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
08
0202
‫م‬
–
5221
‫هـ‬
‫بٌن‬ ‫االرتباط‬ ً‫ه‬ ‫األهم‬ ‫النمطة‬ ‫لكن‬
ً‫المنطم‬ ‫التفكٌر‬
‫أو‬
‫المشكالت‬ ‫حل‬ ‫طرق‬
‫الخوارزمٌات‬ ‫وبٌن‬
‫وجه‬ ‫على‬ ‫وللمبرمجٌن‬ ‫ا‬ً‫م‬‫عمو‬ ‫للبشر‬ ‫ضرورٌة‬ ‫مهارة‬ ‫شن‬ ‫بال‬ ‫هو‬ ً‫المنطم‬ ‫فالتفكٌر‬ ،‫والبرمجة‬
‫المهارة‬ ‫هذه‬ ‫لمنحهم‬ ‫مبكرة‬ ‫سن‬ ‫من‬ ‫لألطفال‬ ‫تعلٌمه‬ ‫الضروري‬ ‫ومن‬ ‫الخصوص‬
‫المهمة‬
ً‫المهن‬ ‫مستمبلهم‬ ً‫ف‬ ‫لنجاحهم‬ ‫ًا‬‫د‬‫ج‬ ‫والضرورٌة‬
.
‫الخوارزمٌات‬ ‫تحلٌل‬
:
-
‫مشكلة‬ ‫لحل‬ ‫سبمة‬ُ‫م‬ ‫خطة‬ ‫تملن‬ ‫تكن‬ ‫لم‬ ‫فإن‬ ‫حسابٌة‬ ‫مشكلة‬ ‫لحل‬ ‫خطة‬ ‫األصل‬ ً‫ف‬ ً‫ه‬ ‫الخوارزمٌة‬
‫فمد‬ ،‫بسٌطة‬ ‫المشكلة‬ ‫كانت‬ ‫لو‬ ‫وحتى‬ ‫المشكلة‬ ‫تلن‬ ‫لحل‬ ‫األرجح‬ ‫على‬ ‫محاوالتن‬ ‫فستفشل‬ ،‫معمدة‬
‫ا‬ ‫من‬ ‫العدٌد‬ ‫هنان‬ ‫ٌكون‬
‫و‬ ،‫لحلول‬
‫بعض‬ ‫من‬ ‫وأكفأ‬ ‫أسرع‬ ‫الحلول‬ ‫هذه‬ ‫بعض‬
.
‫الولت‬ ‫ناحٌة‬ ‫من‬ ‫الخوارزمٌات‬ ‫كفاءة‬ ‫بدراسة‬ ‫ٌهتم‬ ‫الذي‬ ‫الخوارزمٌات‬ ‫تحلٌل‬ ‫أهمٌة‬ ً‫تأت‬ ‫هنا‬ ‫من‬
‫ا‬ً‫ك‬‫استهال‬ ‫واأللل‬ ‫واألسرع‬ ‫األبسط‬ ‫الحل‬ ‫واختٌار‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫ٌحتاجها‬ ً‫الت‬ ‫والذاكرة‬
‫تخفض‬ ‫أن‬ ‫ترٌد‬ ،‫الحوسبة‬ ‫بلغة‬ ‫أو‬ ،‫للموارد‬
ٌ‫تعم‬
‫الخوارزمٌة‬ ‫د‬
Algorithms Complexity
‫ممكن‬ ‫حد‬ ‫ألصى‬ ‫إلى‬
.
َ‫ة‬ٌ‫خوارزم‬ ‫الخوارزمٌة‬ ‫كانت‬ ‫إن‬ ،‫المشكلة‬ ‫لحل‬ ‫الضرورٌة‬ ‫الموارد‬ ‫كل‬ ‫الخوارزمٌة‬ ‫تعمٌد‬ ‫ٌشمل‬
‫الخوارزمٌة‬ ‫كانت‬ ‫إن‬ ‫أما‬ .‫الوجبة‬ ‫إلعداد‬ ‫الالزمة‬ ‫والطالة‬ ‫الولت‬ ‫سٌكون‬ ‫تعمٌدها‬ ّ‫فإن‬ ،‫طبخ‬
‫سٌكون‬ ،‫الرٌاضٌات‬ ً‫ف‬ ‫مشكلة‬ ‫لحل‬ ‫تسعى‬
‫خطوات‬ ‫إلجراء‬ ‫الالزم‬ ‫الولت‬ ‫هو‬ ‫تعمٌدها‬
‫الخوارزمٌة‬
.
‫الضرورٌان‬ ‫الذاكرة‬ ‫ومساحة‬ ‫الولت‬ ‫سٌكون‬ ‫تعمٌدها‬ ّ‫فإن‬ ،‫حاسوبٌة‬ ‫الخوارزمٌة‬ ‫كانت‬ ‫إن‬ ‫أما‬
‫الخوارزمٌات‬ ‫علم‬ ً‫ف‬ ً
‫كامال‬ ‫ا‬ً‫ع‬‫فر‬ ‫العلماء‬ ‫ابتكر‬ ‫السبب‬ ‫لهذا‬ .‫الخوارزمٌة‬ ‫خطوات‬ ‫لتنفٌذ‬
‫ى‬ّ‫م‬‫ُس‬ٌ ‫الخوارزمٌات‬ ‫تعمٌد‬ ‫لتمدٌر‬ ‫ا‬ً‫ص‬ّ‫ص‬‫خ‬ُ‫م‬
‫التعمٌد‬ ‫نظرٌة‬
‫إلى‬ ‫الخوارزمٌات‬ ‫ف‬ّ‫ن‬‫ٌص‬ ‫والذي‬ ،
ً‫الزمان‬ ‫تعمٌدها‬ ‫بحسب‬ ‫أصناف‬
Time Complexity
‫الذي‬ ‫الولت‬ ‫ممدار‬ ‫ٌصف‬ ‫الذي‬
‫المساحة‬ ‫بتعمٌد‬ ‫ٌسمى‬ ‫ما‬ ‫أو‬ ً‫المكان‬ ‫وتعمٌدها‬ .‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫ٌستغرله‬
Space
Complexity
‫الخوارزم‬ ‫عملٌات‬ ‫لتنفٌذ‬ ‫الالزمة‬ ‫الذاكرة‬ ‫خالٌا‬ ‫عدد‬ ‫ٌمثل‬ ‫الذي‬
‫استثناء‬ ‫مع‬ ‫ٌة‬
‫الخوارزمٌة‬ ‫لدخل‬ ‫المخصصة‬ ‫المساحة‬
.
‫ٌسمى‬ ‫خاص‬ ‫بتدوٌن‬ ‫الخوارزمٌة‬ ‫تعمٌد‬ ‫عن‬ ‫التعبٌر‬ ‫ٌتم‬
Big O notation
‫لوصف‬ ‫طرٌمة‬ ‫وهو‬
‫الصنف‬ ‫هو‬ ‫األصناف‬ ‫هذه‬ ‫وأدنى‬ ‫جبرٌة‬ ‫مصطلحات‬ ‫باستخدام‬ ً‫الزمن‬ ‫الخوارزمٌة‬ ‫تعمٌد‬
O(1)‎
،
‫لحل‬ ‫ا‬ً‫ت‬‫ثاب‬ ‫ولتا‬ ‫تستغرق‬ ‫الخوارزمٌة‬ ّ‫أن‬ ً‫ٌعن‬ ‫والذي‬
ً‫ف‬ ‫كما‬ ‫الدخل‬ ‫حجم‬ ‫كان‬ ‫مهما‬ ‫المشكلة‬
‫لابمة‬ ‫بٌن‬ ‫من‬ ‫رلم‬ ‫أول‬ ‫طباعة‬ ‫خوازرمٌة‬ ‫أو‬ ً
‫مثال‬ ً‫زوج‬ ‫أم‬ ‫فردي‬ ‫العدد‬ ‫كون‬ ‫معرفة‬ ‫خوارزمٌة‬
‫الصنف‬ ‫أما‬ ،‫األرلام‬ ‫من‬
O(n)‎
‫الدخل‬ ‫حجم‬ ‫مع‬ ‫متناسبة‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫مدة‬ ّ‫أن‬ ً‫ٌعن‬َ‫ف‬
n
‫كما‬
‫عدد‬ ‫أكبر‬ ‫إٌجاد‬ ‫وخوازمٌة‬ ‫العدد‬ ‫مضروب‬ ‫حساب‬ ‫خوارزمٌة‬ ً‫ف‬
‫األعداد‬ ‫من‬ ‫مجموعة‬ ‫بٌن‬ ‫من‬
.
‫تدوٌن‬ ‫وفك‬ ‫الخوارزمٌات‬ ‫تعمٌد‬ ‫أنواع‬ ‫بأشهر‬ ‫مختصرة‬ ‫لابمة‬ ‫وإلٌن‬
Big O
‫منها‬ ‫كل‬ ‫وداللة‬
:
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
09
0202
‫م‬
–
5221
‫هـ‬

O(1)‎
‫الدخل‬ ‫حجم‬ ‫كان‬ ‫مهما‬ ‫الزمن‬ ‫نفس‬ ‫الخوارزمٌة‬ ‫تستغرق‬ ‫أي‬ :‫ثابت‬ ً‫زمن‬ ‫تعمٌد‬
.

O(n)‎
‫حجم‬ ‫مع‬ ً‫خط‬ ‫بشكل‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫زمن‬ ‫ٌتناسب‬ ‫أي‬ :ً‫خط‬ ً‫زمن‬ ‫تعمٌد‬
‫إذا‬ ‫آخر‬ ‫بمعنى‬ ،‫الدخل‬
‫الدخل‬ ‫حجم‬ ‫كان‬
n
‫المطلوب‬ ‫الخطوات‬ ‫عدد‬ ‫فإن‬
‫لحلها‬
‫سٌكون‬
n
‫األكثر‬ ‫على‬
.

O(sqrt(n))
‫هو‬ ‫الخوازرمٌة‬ ‫دخل‬ ‫حجم‬ ‫كان‬ ‫إذا‬ ‫أي‬ :ً‫تربٌع‬ ‫جذر‬ ‫تعمٌد‬
n
‫سوف‬
‫تنفٌذ‬ ‫زمن‬ ‫ٌتناسب‬
‫الخوارزمٌة‬
‫الدخل‬ ‫لمٌمة‬ ً‫التربٌع‬ ‫الجذر‬ ‫مع‬
.

O(n^c)‎
‫ت‬ ‫زمن‬ ‫ٌتناسب‬ :‫الحدود‬ ‫كثٌر‬ ‫تعمٌد‬
‫مرفوع‬ ‫الدخل‬ ‫حجم‬ ‫مع‬ ‫الخوارزمٌة‬ ‫نفٌذ‬
‫لألس‬
c
ً‫تربٌع‬ ً‫زمن‬ ‫تعمٌد‬ ‫ٌكون‬ ‫فمد‬ ‫أنواع‬ ‫وله‬
O (n^²)‎
‫تنفٌذ‬ ‫زمن‬ ‫ٌتناسب‬ ‫أي‬
ً‫تكعٌب‬ ً‫زمن‬ ‫تعمٌد‬ ‫أو‬ ‫الدخل‬ ‫حجم‬ ‫مكعب‬ ‫مع‬ ‫الخوارزمٌة‬
O(n^3)‎
‫زمن‬ ‫ٌتناسب‬ ‫أي‬
‫الدخل‬ ‫حجم‬ ‫مكعب‬ ‫مع‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬
.

O(log n)‎
‫تن‬ ‫زمن‬ ‫تناسب‬ :ً‫لوغارٌتم‬ ‫تعمٌد‬
‫الدخل‬ ‫حجم‬ ‫لوغارٌتم‬ ‫مع‬ ‫الخوارزمٌة‬ ‫فٌذ‬
.

O(n log n)‎
ً‫الخط‬ ‫من‬ ً‫ال‬ٌ‫لل‬ ‫أبطأ‬ ‫وهو‬ :ً‫خط‬ ً‫لوغارٌتم‬ ‫تعمٌد‬

O(2^n)‎
‫حجم‬ ‫زٌادة‬ ‫مع‬ ً‫أس‬ ‫بشكل‬ ‫الخوارزمٌة‬ ‫خطوات‬ ‫تتضاعف‬ ‫وفٌه‬ :ً‫أس‬ ‫تعمٌد‬
‫الدخل‬
.

O(n!)‎
‫ضرب‬ ‫أي‬ ‫الدخل‬ ً‫عامل‬ ‫لٌمة‬ ‫مع‬ ‫الخوارزمٌة‬ ‫زمن‬ ‫ٌتناسب‬ ‫أي‬ :ً‫عامل‬ ‫تعمٌد‬
‫جمٌع‬
‫الدخل‬ ‫لٌمة‬ ‫من‬ ‫األصغر‬ ‫الموجبة‬ ‫الصحٌحة‬ ‫األعداد‬
.
‫وجدته‬ ‫الذي‬ ‫الحل‬ ‫ذلن‬ ‫ٌكون‬ ‫أن‬ ‫النادر‬ ‫من‬ ‫لكن‬ ،‫الخوارزمٌات‬ ‫بدون‬ ‫للمشاكل‬ ً
‫حال‬ ‫تجد‬ ‫أن‬ ‫ٌمكنن‬
‫الحل‬ ‫على‬ ‫العثور‬ ‫من‬ ‫نن‬ّ‫ك‬‫ٌم‬ ‫فهو‬ ‫الخوارزمٌات‬ ‫تحلٌل‬ ‫فابدة‬ ‫وهذه‬ ،‫واألكفأ‬ ‫األفضل‬ ‫الحل‬ ‫هو‬
‫للموارد‬ ‫ا‬ً‫ك‬‫استهال‬ ‫واأللل‬ ‫واألنسب‬ ‫األمثل‬
.
‫ممال‬ ‫بمطالعة‬ ‫أنصح‬ ‫المعلومات‬ ‫من‬ ‫للمزٌد‬
‫الخوارزمٌات‬ ‫تحلٌل‬ ‫إلى‬ ‫مدخل‬
‫وممال‬
‫الشامل‬ ‫الدلٌل‬
‫الخوارزمٌات‬ ‫تعمٌد‬ ‫عن‬
‫البرمجٌة‬ ‫الخوارزمٌات‬ ‫أنواع‬
:
-
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
21
0202
‫م‬
–
5221
‫هـ‬
‫بحسب‬ ‫الخوارزمٌات‬ ‫وأنواع‬ ‫أسالٌب‬ ‫وتتنوع‬ ‫المشاكل‬ ‫لحل‬ ‫عامة‬ ‫خطط‬ ً‫ه‬ ‫الخوارزمٌات‬
‫المشكلة‬ ‫لحل‬ ‫الخوارزمٌة‬ ‫تتبعه‬ ‫الذي‬ ‫األسلوب‬
‫على‬ ‫وبناء‬ ،‫تحلها‬ ً‫الت‬ ‫المشكلة‬ ‫نوع‬ ‫بحسب‬ ‫أو‬
‫أبرزها‬ ‫ومن‬ ‫الخوارزمٌات‬ ‫من‬ ‫مختلفة‬ ‫ا‬ً‫ع‬‫أنوا‬ ‫نجد‬ ‫أن‬ ‫ٌمكن‬ ‫ذلن‬
:

‫الغاشمة‬ ‫الموة‬ ‫خوارزمٌات‬
:
Brute force algorithms
‫من‬ ‫الخوارزمٌات‬ ‫تحاول‬
‫من‬ ‫تتمكن‬ ‫حتى‬ ‫الممكنة‬ ‫الخٌارات‬ ‫بجمٌع‬ ‫وتمر‬ ‫مباشرة‬ ‫بطرٌمة‬ ‫المشكلة‬ ‫حل‬ ‫النوع‬ ‫هذا‬
‫العثور‬
‫المشكلة‬ ‫لهذه‬ ‫حل‬ ‫على‬
.

‫الجشعة‬ ‫الخوارزمٌات‬
:
Greedy algorithms
‫حل‬ ‫الجشعة‬ ‫الخوارزمٌات‬ ‫تحاول‬
‫للمشكلة‬ ‫العام‬ ‫الحل‬ ‫من‬ ‫ًا‬‫د‬ٌ‫رو‬ ‫ًا‬‫د‬ٌ‫رو‬ ‫تمترب‬ ‫بحٌث‬ ،‫فخطوة‬ ‫خطوة‬ ‫المشكلة‬
.

‫الدٌنامٌكٌة‬ ‫البرمجة‬ ‫خوارزمٌات‬
:
Dynamic Programming
‫خوارزمٌات‬ ‫م‬ّ‫س‬‫تم‬
‫الفرعٌة‬ ‫المشاكل‬ ‫تلن‬ ‫تحل‬ ّ‫م‬‫ث‬ ،‫أبسط‬ ‫فرعٌة‬ ‫مشاكل‬ ‫إلى‬ ‫المشكلة‬ ‫الدٌنامٌكٌة‬ ‫البرمجة‬
ً‫النهاب‬ ‫الحل‬ ‫الستنتاج‬

‫تسد‬ ‫فرق‬ ‫خوارزمٌات‬
:
Divide and conquer algorithms
‫خوارزمٌات‬ ‫م‬ِّ‫س‬‫تم‬
‫ا‬ ‫وتدمج‬ ‫تحلها‬ ّ‫م‬‫ث‬ ،‫األصلٌة‬ ‫المسألة‬ ‫تشبه‬ ‫فرعٌة‬ ‫مسابل‬ ‫إلى‬ ‫المسألة‬ ‫تسد‬ ‫ق‬ِّ
‫فر‬
‫لحلول‬
‫األصلٌة‬ ‫المسألة‬ ٍّ‫ل‬‫ح‬ ‫لتمدٌم‬
.

ً‫الخلف‬ ‫التعمب‬ ‫خوارزمٌات‬
:
Backtracking algorithms
‫خوارزمٌات‬ ‫تحاول‬
‫حذف‬ ‫مع‬ ،‫فخطوة‬ ‫خطوة‬ ‫ًا‬ٌ‫تصاعد‬ ‫الحل‬ ‫بناء‬ ‫عبر‬ ‫ًا‬ٌ‫تعاود‬ ‫المشكلة‬ ‫حل‬ ً‫الخلف‬ ‫التعمب‬
‫أثناء‬ ‫ولت‬ ّ‫ي‬‫أ‬ ً‫ف‬ ‫حلها‬ ‫راد‬ُ‫م‬‫ال‬ ‫المسألة‬ ‫تفرضها‬ ً‫الت‬ ‫للمٌود‬ ‫تستجٌب‬ ‫ال‬ ً‫الت‬ ‫الحلول‬
‫تنفٌذ‬
‫الخوارزمٌة‬
.

‫الترتٌب‬ ‫خوارزمٌات‬
:
Sort algorithms
‫من‬ ‫مجموعة‬ ‫ترتب‬ ‫خوارزمٌات‬ ً‫ه‬
ً‫ف‬ ‫الهامة‬ ‫الخطوات‬ ‫أحد‬ ‫هو‬ ‫والفرز‬ .ً‫هجاب‬ ‫أو‬ ً‫رلم‬ ‫معٌن‬ ‫ترتٌب‬ ً‫ف‬ ‫المابمة‬ ‫العناصر‬
‫ولكل‬ ‫الفرز‬ ‫عملٌة‬ ‫تحمٌك‬ ‫من‬ ‫تمكننا‬ ‫خوارزمٌات‬ ‫عدة‬ ‫توجد‬ ،‫ًا‬‫د‬ٌ‫تعم‬ ‫األكثر‬ ‫الخوارزمٌات‬
‫ومحد‬ ‫مٌزاتها‬ ‫منها‬
‫ودٌتها‬
.

‫البحث‬ ‫خوارزمٌات‬
:
Search algorithms
‫مولع‬ ‫بتحدٌد‬ ‫تموم‬ ‫خوارزمٌات‬ ً‫ه‬
‫ضمن‬ ‫المخزنة‬ ‫البٌانات‬ ‫عن‬ ‫تبحث‬ ‫أنها‬ ‫أي‬ ‫البٌانات‬ ‫من‬ ‫مجموعة‬ ‫بٌن‬ ‫محددة‬ ‫بٌانات‬
‫باستردادها‬ ‫وتموم‬ ‫البٌانات‬ ‫بنى‬ ‫أو‬ ‫الهٌاكل‬ ‫بعض‬
.

‫مج‬ ‫على‬ ً‫ء‬‫بنا‬ ‫التعلم‬ ‫تحاول‬ ‫خوارزمٌات‬ ً‫ه‬ :ً‫اﻵل‬ ‫التعلم‬ ‫خوارزمٌات‬
‫حاالت‬ ‫من‬ ‫موعة‬
‫علٌها‬ ً‫ء‬‫بنا‬ ‫معمدة‬ ‫لرارات‬ ‫اتخاذ‬ ‫من‬ ‫تتمكن‬ ً‫ك‬ ‫السابمة‬ ‫المرار‬ ‫اتخاذ‬
.

‫غٌر‬ ‫نص‬ ‫إلى‬ ‫ممروء‬ ‫نص‬ ‫بتحوٌل‬ ‫تموم‬ ً‫الت‬ ‫الخوارزمٌات‬ ً‫ه‬ :‫التشفٌر‬ ‫خوارزمٌات‬
‫بفهم‬ ‫فمط‬ ‫لهم‬ ‫المصرح‬ ‫لألطراف‬ ‫ٌمكن‬ ‫بحٌث‬ ‫المشفر‬ ‫النص‬ ‫باسم‬ ‫ُعرف‬ٌ ‫ممروء‬
‫خوا‬ ً‫وه‬ ‫النص‬ ‫هذا‬ ً‫ف‬ ‫الموجودة‬ ‫المعلومات‬
‫البٌانات‬ ‫أمن‬ ‫مجال‬ ً‫ف‬ ‫ًا‬‫د‬‫ج‬ ‫هامة‬ ‫رزمٌات‬
‫الخصوصٌة‬ ‫على‬ ‫والحفاظ‬ ‫الحساسة‬
.
‫من‬ ‫العدٌد‬ ‫بالطبع‬ ‫وهنان‬ ‫ا‬ً‫ع‬‫شٌو‬ ‫األكثر‬ ‫الخوارزمٌات‬ ‫وتصنٌفات‬ ‫أنواع‬ ‫بعض‬ ‫تلن‬ ‫كانت‬
‫المختلفة‬ ‫الحاالت‬ ‫من‬ ‫للعدٌد‬ ‫األخرى‬ ‫الخوارزمٌات‬
.
‫مثل‬ ‫التطبٌمات‬ ً‫ف‬ ‫بسهولة‬ ‫تطبٌمها‬ ‫ٌمكن‬ ‫أخرى‬ ‫طرق‬ ‫ا‬ً‫ض‬ٌ‫أ‬ ‫هنان‬
‫خوارز‬
‫مٌة‬
Dijkstra
‫و‬
Cycle Detection
‫و‬
Kruskal Minimum Spanning Trees
‫من‬ ً‫فه‬
‫منها‬ ‫للتعلم‬ ‫للمبتدبٌن‬ ‫األساسٌة‬ ‫الخوارزمٌات‬
.
‫البرمجة‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫أهمٌة‬
:
-
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
20
0202
‫م‬
–
5221
‫هـ‬
،‫والتطبٌمات‬ ‫البرامج‬ ‫لكتابة‬ ‫ضروري‬ ‫غٌر‬ ‫وهو‬ ، ٌ‫َرف‬‫ت‬ ‫الخوارزمٌات‬ ‫تعلم‬ ّ‫أن‬ ‫ٌمول‬ ‫لد‬ ‫من‬ ‫هنان‬
‫أن‬ ‫للمبرمج‬ ‫ٌمكن‬ ‫ه‬ّ‫ن‬‫وأ‬
‫الخوارزمٌات‬ ‫مفاهٌم‬ ‫إلى‬ ‫الحاجة‬ ‫دون‬ ‫مباشرة‬ ‫برامجه‬ ‫ٌكتب‬
.
‫تكون‬ ‫أن‬ ‫ٌمكنن‬ ‫ال‬ ‫لكن‬ ،‫ا‬ً‫ج‬‫مبرم‬ ‫َكون‬‫ت‬‫ل‬ ‫الخوارزمٌات‬ ً‫ف‬ ‫ا‬ً‫خبٌر‬ ‫تكون‬ ‫أن‬ ‫علٌن‬ ‫لٌس‬ ‫ه‬ّ‫ن‬‫أ‬ ‫صحٌح‬
‫الخوارزمٌات‬ ‫تصمٌم‬ ‫فن‬ ‫تتعلم‬ ‫أن‬ ‫دون‬ ‫ا‬ً‫ف‬‫ومحتر‬ ‫ا‬ً‫ع‬‫بار‬ ‫ا‬ً‫ج‬‫مبرم‬
.
‫أبرزها‬ ‫الفوابد‬ ‫من‬ ‫العدٌد‬ ‫للمبرمج‬ ‫الخوارزمٌات‬ ‫تعلم‬ ‫ٌوفر‬
:

‫أفضل‬ ‫بشكل‬ ‫المشكالت‬ ‫حل‬ ‫على‬ ‫المدرة‬

‫الحاسوبٌة‬ ‫للموارد‬ ‫الفعال‬ ‫االستخدام‬

‫البرمجة‬ ‫ولت‬ ‫ٌوفر‬

‫أفضل‬ ‫ا‬ً‫ج‬‫مبرم‬ ‫منن‬ ‫ٌجعل‬
‫تعزٌزها‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫تعلم‬ ‫ٌسهم‬ ‫كٌف‬ ‫ونتعرف‬ ‫التفصٌل‬ ‫من‬ ‫بمزٌد‬ ‫منها‬ ‫فابدة‬ ‫كل‬ ‫لننالش‬
.
‫أفضل‬ ‫بشكل‬ ‫المشكالت‬ ‫حل‬ ‫على‬ ‫المدرة‬
‫حل‬ ‫لطرق‬ ‫تعلمن‬ ‫سٌحسن‬
‫عامة‬ ‫بصورة‬ ‫المشكالت‬ ‫حل‬ ‫على‬ ‫لدرتن‬ ‫من‬ ‫الخوارزمٌات‬
‫الحلول‬ ً‫ف‬ ‫التفكٌر‬ ً‫ف‬ ‫ذهنٌة‬ ‫مرونة‬ ‫وٌكسبن‬ ،‫الخصوص‬ ‫وجه‬ ‫على‬ ‫البرمجٌة‬ ‫والمشكالت‬
‫المستخدمة‬ ‫البرمجٌة‬ ‫اللغة‬ ‫كانت‬ ‫ًا‬ٌ‫أ‬ ‫المتنوعة‬ ‫الحاسوبٌة‬ ‫البرامج‬ ‫كتابة‬ ً‫ف‬ ‫ا‬ً‫م‬‫الح‬ ‫وٌساعدن‬
،‫البرمجة‬ ‫لغات‬ ‫عن‬ ‫مستملة‬ ‫الخوارزمٌات‬ ّ‫بأن‬ ‫ا‬ً‫ص‬‫خصو‬
‫لغة‬ ‫كانت‬ ‫مهما‬ ‫استخدامها‬ ‫ٌمكنن‬ ‫لذا‬
‫علٌها‬ ‫تعمل‬ ً‫الت‬ ‫البرمجة‬
.
‫للموارد‬ ‫الفعال‬ ‫االستخدام‬
‫والتخزٌن‬ ‫الذاكرة‬ ‫مثل‬ ‫للموارد‬ ‫المناسب‬ ‫االستخدام‬ ‫الصحٌحة‬ ‫الخوارزمٌة‬ ‫اختٌار‬ ‫لن‬ ‫ٌضمن‬
‫ومبتكر‬ ‫مفٌدة‬ ‫التطبٌك‬ ‫أو‬ ‫البرنامج‬ ‫علٌها‬ ‫بنٌت‬ ً‫الت‬ ‫الفكرة‬ ‫تكون‬ ‫أن‬ ً‫ٌكف‬ ‫فال‬ .‫وغٌرها‬ ‫والشبكة‬
،‫ة‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
22
0202
‫م‬
–
5221
‫هـ‬
‫فما‬ ،‫محدودة‬ ‫وموارد‬ ‫معمول‬ ‫ولت‬ ً‫ف‬ ‫الجوال‬ ‫أو‬ ‫الحاسوب‬ ‫ذها‬ّ‫ف‬‫ٌن‬ ‫بحٌث‬ ‫عملٌة‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬
‫إلى‬ ‫ٌحتاج‬ ‫برنامج‬ ‫فابدة‬ ‫وما‬ ،‫ا‬ً‫ع‬‫مرب‬ ‫لٌرسم‬ ‫كاملة‬ ‫دلٌمة‬ ‫ٌحتاج‬ ‫رسم‬ ‫تطبٌك‬ ‫فابدة‬
ٔٓ
‫جٌجاباٌت‬
‫لٌعمل‬ ‫الذاكرة‬ ‫من‬
!
‫البرمجة‬ ‫ولت‬ ‫توفٌر‬
‫إ‬ ،‫الولت‬ ‫من‬ ‫الكثٌر‬ ‫الخوارزمٌات‬ ‫تعلم‬ ‫علٌن‬ ‫ٌوفر‬
‫لد‬ ً‫الت‬ ‫والمسابل‬ ‫المشاكل‬ ‫معظم‬ ّ‫أن‬ ‫ذ‬
‫ٌغنٌن‬ ‫ما‬ ،‫وسرٌعة‬ ‫نة‬ّ‫س‬‫ح‬ُ‫م‬ ‫خوارزمٌات‬ ‫هٌبة‬ ‫على‬ ‫جاهزة‬ ‫حلول‬ ‫لها‬ ‫البرامج‬ ‫كتابة‬ ‫أثناء‬ ‫تعترضن‬
‫األرجح‬ ‫على‬ ‫لبلن‬ ‫ها‬ّ‫حل‬ ‫من‬ ‫هنان‬ ّ‫ألن‬ ،‫ما‬ ‫مشكلة‬ ‫تعترضن‬ ‫مرة‬ ‫كل‬ ً‫ف‬ ‫العجلة‬ ‫اختراع‬ ‫إعادة‬ ‫عن‬
‫تحو‬ ‫هو‬ ‫فعله‬ ‫علٌن‬ ‫ما‬ ‫وكل‬ ‫خوارزمٌة‬ ‫هٌبة‬ ‫على‬ ‫ّها‬‫د‬‫وأع‬
‫ثم‬ ‫تستعملها‬ ً‫الت‬ ‫البرمجة‬ ‫لغة‬ ‫إلى‬ ‫ٌلها‬
‫خوارزمٌات‬ ‫مثل‬ ‫والفعالة‬ ‫الشهٌرة‬ ‫الخوارزمٌات‬ ‫فمعظم‬ ‫تنفٌذها‬ ‫إلى‬ ‫حتى‬ ‫تضطر‬ ‫ال‬ ‫ولد‬ ‫ذها‬ّ‫ف‬‫تن‬
‫شٌفراتن‬ ً‫ف‬ ‫استخدامها‬ ‫ٌمكنن‬ ‫جاهزة‬ ‫مكتبات‬ ‫بشكل‬ ‫البرمجة‬ ‫لغات‬ ً‫ف‬ ‫تدمج‬ ‫والفرز‬ ‫البحث‬
‫البرمجٌة‬
.
‫أفضل‬ ‫ا‬ً‫ج‬‫مبرم‬ ‫منن‬ ‫تجعل‬ ‫الخوارزمٌات‬
‫الخ‬ ‫تعلم‬
‫تطبٌمات‬ ً‫ف‬ ‫ا‬ً‫ص‬‫متخص‬ ‫كنت‬ ‫واء‬َ‫س‬‫ف‬ ،‫احترافٌة‬ ‫وأكثر‬ ‫أفضل‬ ‫ا‬ً‫ج‬‫مبرم‬ ‫سٌجعلن‬ ‫وارزمٌات‬
‫من‬ ‫غٌرها‬ ‫أو‬ ‫األلعاب‬ ‫تصمٌم‬ ‫أو‬ ‫الموالع‬ ‫بناء‬ ً‫ف‬ ‫أو‬ ،‫المكتب‬ ‫سطح‬ ‫تطبٌمات‬ ‫أو‬ ‫الجوال‬
‫مجاالت‬
‫البرمجة‬
‫برامج‬ ‫تطوٌر‬ ‫على‬ ‫وٌساعدن‬ ً‫البرمج‬ ‫تفكٌرن‬ ‫أفك‬ ‫سٌوسع‬ ‫الخوارزمٌات‬ ‫تعلم‬ ّ‫فإن‬ ،
‫وأكثر‬ ‫وأسرع‬ ‫أجود‬
‫موثولٌة‬
.
‫الخوارزمٌات‬ ‫تعلم‬ ‫مصادر‬ ‫أهم‬
:
-
‫مجاالت‬ ً‫ف‬ ‫ٌظهر‬ ‫ما‬ ‫أكثر‬ ‫ٌظهر‬ ‫الضعف‬ ‫هذا‬ ،ً‫التمن‬ ً‫العرب‬ ‫المحتوى‬ ً‫ف‬ ‫ضعف‬ ‫لألسف‬ ‫هنان‬
‫من‬ ‫العدٌد‬ ‫حسوب‬ ‫أكادٌمٌة‬ ‫وفرت‬ ‫فمد‬ ً‫العرب‬ ‫المحتوى‬ ً‫ف‬ ‫المصور‬ ‫هذا‬ ّ‫د‬‫ولس‬ .‫الخوارزمٌات‬
‫العربٌة‬ ‫باللغة‬ ‫المٌمة‬ ‫التعلم‬ ‫مصادر‬
.
‫الك‬ ‫لألهمٌة‬ ‫ا‬ً‫فنظر‬
‫مثل‬ ‫المجاالت‬ ‫من‬ ‫غٌرها‬ ً‫وف‬ ،‫البرمجة‬ ‫مجاالت‬ ‫كافة‬ ً‫ف‬ ‫للخوارزمٌات‬ ‫بٌرة‬
‫حسوب‬ ‫أكادٌمٌة‬ ‫لن‬ ‫وفرت‬ ‫فمد‬ ،‫وغٌرها‬ ‫والتنمٌة‬ ‫الرٌاضٌات‬
‫الحاسب‬ ‫علوم‬ ‫دورة‬
‫تتضمن‬ ً‫والت‬
ً‫ف‬ ‫مبتدئ‬ ‫أي‬ ‫ٌحتاجها‬ ‫متعددة‬ ‫مسارات‬
‫البرمجة‬ ‫تعلم‬
‫وبنى‬ ‫الخوارزمٌات‬ ‫مسار‬ ‫أهمها‬ ‫من‬
‫أهم‬ ‫على‬ ‫وٌعرفن‬ ‫وتحلٌلها‬ ‫الخوارزمٌات‬ ‫كتابة‬ ‫كٌفٌة‬ ‫بخطوة‬ ‫خطوة‬ ‫ٌعلمن‬ ‫الذي‬ ‫المعطٌات‬
‫والخوارزمٌات‬ ‫والترتٌب‬ ‫البحث‬ ‫خوارزمٌات‬ ‫مثل‬ ً‫البرمج‬ ‫عملن‬ ً‫ف‬ ‫تفٌدن‬ ً‫الت‬ ‫الخوارزمٌات‬
‫الكثٌر‬ ‫وغٌرها‬ ‫البٌانٌة‬ ‫الرسوم‬ ‫وخوارزمٌات‬ ‫الرٌاضٌة‬
.
‫األك‬ ‫نشرت‬ ‫كما‬
‫سلسلة‬ ‫ادٌمٌة‬
‫للمحترفٌن‬ ‫الخوارزمٌات‬
‫بالتفصٌل‬ ‫الخوارزمٌات‬ ‫تشرح‬ ً‫الت‬
‫كالولت‬ ‫البرامج‬ ‫تستهلكها‬ ً‫الت‬ ‫الموارد‬ ‫لتمدٌر‬ ‫التعمٌد‬ ‫مفهوم‬ ‫مثل‬ ‫األساسٌة‬ ‫مفاهٌمها‬ ‫كافة‬ ًّ‫وتغط‬
‫العامة‬ ‫الخوارزمٌات‬ ‫أنماط‬ ‫وبعض‬ ،‫الدٌنامٌكٌة‬ ‫البرمجة‬ ‫مفاهٌم‬ ‫إلى‬ ‫إضافة‬ .‫والذاكرة‬
.
‫ب‬ ‫غنٌة‬ ‫السلسلة‬ ‫تلن‬
‫المشاكل‬ ‫بعض‬ ‫لحل‬ ‫الخوارزمٌات‬ ‫من‬ ‫الكثٌر‬ ‫تستعرض‬ ‫إذ‬ ،‫التطبٌمٌة‬ ‫األمثلة‬
‫عالوة‬ ،‫والبحث‬ ‫المصفوفات‬ ‫وترتٌب‬ ‫باألشجار‬ ‫المتعلمة‬ ‫تلن‬ ‫ا‬ً‫ص‬‫خصو‬ ‫الحاسب‬ ‫علم‬ ً‫ف‬ ‫التملٌدٌة‬
‫األعداد‬ ‫ونظرٌة‬ ‫والهندسة‬ ‫الجبر‬ ‫مجاالت‬ ً‫ف‬ ‫المتنوعة‬ ‫الخوارزمٌات‬ ‫من‬ ‫طابفة‬ ‫على‬
.
ٌ‫الخوارزم‬ ‫تنفذ‬ ‫السلسلة‬ ‫أن‬ ‫كما‬
‫فمهما‬ ،‫البرمجة‬ ‫لغات‬ ‫من‬ ‫العدٌد‬ ‫خالل‬ ‫من‬ ‫تستعرضها‬ ً‫الت‬ ‫ات‬
‫أو‬ ‫جافا‬ ‫أو‬ ‫باٌثون‬ ‫كانت‬ ‫سواء‬ ،‫خاصتن‬ ‫البرمجة‬ ‫لغة‬ ‫كانت‬
C++/C
‫أو‬
#C
،‫سكرٌبت‬ ‫جافا‬ ‫أو‬
‫الكتاب‬ ‫هذا‬ ً‫ف‬ ‫وغٌرها‬ ‫اللغات‬ ‫بهذه‬ ‫أمثلة‬ ‫فستجد‬
.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
23
0202
‫م‬
–
5221
‫هـ‬
‫عن‬ ً
‫شامال‬ ‫ا‬ً‫م‬ٌ‫توث‬ ‫كذلن‬ ‫وستجد‬
‫حسوب‬ ‫موسوعة‬ ً‫ف‬ ‫الخوارزمٌات‬
‫ألهم‬ ‫توثٌمات‬ ‫ٌضم‬
‫البرمجة‬ ً‫ف‬ ‫ستخدمة‬ُ‫م‬‫ال‬ ‫الخوارزمٌات‬
.
ً‫ف‬ ‫تشترن‬ ‫بأن‬ ‫كذلن‬ ‫وننصحن‬
‫ٌوتٌوب‬ ‫على‬ ‫حسوب‬ ‫أكادٌمٌة‬ ‫لناة‬
‫من‬ ‫الكثٌر‬ ‫فٌها‬ ‫وستجد‬
‫وغٌرها‬ ً‫المنطم‬ ‫والتفكٌر‬ ‫والخوارزمٌات‬ ‫البرمجة‬ ‫حول‬ ‫الشٌمة‬ ‫والمواضٌع‬ ‫المفٌدة‬ ‫الدروس‬
‫الكثٌر‬
.
‫الخ‬ ‫أتعلم‬ ‫أن‬ ‫كمبتدئ‬ ً‫عل‬ ‫ٌجب‬ ‫هل‬ ‫تتساءل‬ ‫كنت‬ ‫إذا‬ ‫ا‬ً‫وأخٌر‬
‫لغات‬ ‫إحدى‬ ‫أتعلم‬ ‫أم‬ ً
‫أوال‬ ‫وارزمٌات‬
‫على‬ ‫بالتعرف‬ ‫أولى‬ ‫كخطوة‬ ‫تبدأ‬ ‫أن‬ ‫لن‬ ً‫فنصٌحت‬ ً
‫أوال‬ ‫البرمجة‬
‫البرمجة‬ ‫أساسٌات‬
‫التمكن‬ ‫وبعد‬
ً‫ف‬ ‫التوازي‬ ‫على‬ ً‫والخوارزم‬ ً‫البرمج‬ ‫تفكٌرن‬ ‫وتطوٌر‬ ‫الخوارزمٌات‬ ‫بتعلم‬ ‫البدء‬ ‫ٌمكنن‬ ‫منها‬
‫كلٌهما‬ ً‫ف‬ ‫لالحتراف‬ ‫تصل‬ ‫حتى‬ ‫التعلم‬ ‫رحلة‬
.
‫ضمن‬ ‫البرمجة‬ ‫لسم‬ ً‫ف‬ ‫وستجد‬ ‫المتمدمة‬ ‫األمور‬ ‫لتعلم‬ ‫تنتمل‬ ‫أن‬ ‫ٌمكن‬ ‫األساسٌات‬ ‫تعلم‬ ‫أتمنت‬ ‫إذا‬
‫المماالت‬ ‫من‬ ‫متنوعة‬ ‫مجموعة‬ ‫حسوب‬ ‫أكادٌمٌة‬ ً‫ف‬ "‫متمدمة‬ ‫برمجة‬ ‫"مماالت‬ ‫لسم‬ ً‫ف‬ ‫ًا‬‫د‬ٌ‫وتحد‬
‫ٌمكنن‬ ‫سؤال‬ ‫أي‬ ‫واجهن‬ ‫حال‬ ً‫وف‬ ‫الخوارزمٌات‬ ‫مجال‬ ً‫ف‬ ‫وخبرتن‬ ‫معرفتن‬ ‫تزٌد‬ ً‫الت‬ ‫المتمدمة‬
ً‫ف‬ ‫طرحه‬
‫واألجوبة‬ ‫األسبلة‬ ‫لسم‬
‫األكادٌمٌة‬ ً‫ف‬
.
:‫التطبٌمٌة‬ ‫الخوارزمٌات‬ _
-
‫وتنفٌذ‬ ‫مشكالت‬ ‫لحل‬ ‫تستخدم‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫إلى‬ ‫ٌشٌر‬ ‫مصطلح‬ ً‫ه‬ ‫التطبٌمٌة‬ ‫الخوارزمٌات‬
‫من‬ ‫واسعة‬ ‫مجموعة‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫تطبٌك‬ ‫ٌمكن‬ .‫معٌن‬ ‫تطبٌك‬ ‫سٌاق‬ ً‫ف‬ ‫محددة‬ ‫وظابف‬
‫وهندسة‬ ،‫الحاسوب‬ ‫علوم‬ ‫مثل‬ ‫المجاالت‬
‫والذكاء‬ ،‫البٌانات‬ ‫وتحلٌل‬ ،‫البٌانات‬ ‫وعلم‬ ،‫البرمجٌات‬
‫المجاالت‬ ‫من‬ ‫وغٌرها‬ ،‫والهندسة‬ ،‫والمحاسبة‬ ،‫واأللعاب‬ ،ً‫االصطناع‬
.
‫األداء‬ ‫وتحسٌن‬ ‫الوالعٌة‬ ‫الحٌاة‬ ‫مشاكل‬ ‫حل‬ ‫على‬ ‫لدرتها‬ ‫من‬ ً‫تأت‬ ‫التطبٌمٌة‬ ‫الخوارزمٌات‬ ‫أهمٌة‬
‫تش‬ ‫ألهمٌتها‬ ‫الربٌسٌة‬ ‫النماط‬ ‫بعض‬ .‫التطبٌمات‬ ‫من‬ ‫العدٌد‬ ً‫ف‬
‫مل‬
:
- 1
‫إلى‬ ‫ٌؤدي‬ ‫مما‬ ،‫المهام‬ ‫تنفٌذ‬ ‫كفاءة‬ ‫لتحسٌن‬ ‫تصمم‬ ‫التطبٌمٌة‬ ‫الخوارزمٌات‬ :‫الكفاءة‬ ‫تحسٌن‬
‫والموارد‬ ‫الولت‬ ‫توفٌر‬
.
- 2
‫مثل‬ ‫الموارد‬ ‫استهالن‬ ‫وتملٌل‬ ،‫والنظم‬ ‫التطبٌمات‬ ‫أداء‬ ‫تحسٌن‬ ً‫ف‬ ‫تساهم‬ :‫األداء‬ ‫تحسٌن‬
‫والمعالجة‬ ‫الذاكرة‬
.
3
-
‫فعال‬ ‫حلول‬ ‫توفٌر‬ :‫الصعبة‬ ‫المشاكل‬ ‫حل‬
‫البحث‬ ‫مشاكل‬ ‫مثل‬ ،‫معمدة‬ ‫أو‬ ‫صعبة‬ ‫تعتبر‬ ‫لمشاكل‬ ‫ة‬
‫والتحلٌل‬ ‫والترتٌب‬
.
-4
‫االلتصادي‬ ‫التحلٌل‬ ‫مثل‬ ‫مجاالت‬ ً‫ف‬ ‫ذكٌة‬ ‫لرارات‬ ‫التخاذ‬ ‫أسس‬ ‫تمدٌم‬ :‫المرارات‬ ‫توجٌه‬
ً‫االستراتٌج‬ ‫والتخطٌط‬ ‫المخزون‬ ‫وإدارة‬
.
-5
‫من‬ ‫العدٌد‬ ً‫ف‬ ‫والمشاكل‬ ‫التحدٌات‬ ‫لحل‬ ‫تستخدم‬ :‫والعٌة‬ ‫لمشاكل‬ ‫حال‬ ‫تمدٌم‬
‫الحٌاتٌة‬ ‫المجاالت‬
‫والتواصل‬ ،‫والتسوٌك‬ ،‫والمالٌة‬ ،‫الطب‬ ‫مثل‬
.
ً‫ف‬ ‫المجتمع‬ ‫وتمدم‬ ‫التكنولوجٌا‬ ‫تطور‬ ‫من‬ ‫ًا‬ٌ‫أساس‬ ‫ا‬ً‫ء‬‫جز‬ ‫التطبٌمٌة‬ ‫الخوارزمٌات‬ ‫تعتبر‬ ،ً‫ا‬‫عموم‬
‫مهمة‬ ‫مجاالت‬ ‫عدة‬ ً‫ف‬ ‫والتمنٌات‬ ‫البرمجٌات‬ ‫وتطوٌر‬ ‫لتحسٌن‬ ‫أساسٌة‬ ً‫وه‬ ،‫متنوعة‬ ‫مجاالت‬
.
_
ٌ‫العمل‬ ‫سٌر‬ ‫وخرابط‬ ‫خوارزمٌات‬
‫ات‬
:
‫رغم‬
‫حسب‬ ‫الحسابٌة‬ ‫العملٌات‬ ‫إنجاز‬ ‫على‬ ‫بمدرته‬ ‫ٌتمٌز‬ ً‫االلكترون‬ ‫الحاسب‬ ‫أن‬
‫و‬ ‫األوامر‬
‫كذلن‬ ‫و‬ ‫متناهٌة‬ ‫بدلة‬ ‫و‬ ‫فابمة‬ ‫بسرعة‬ ‫له‬ ‫المعطاة‬ ‫التعلٌمات‬
‫بإمكانٌاته‬
‫حفظ‬ ً‫ف‬ ‫الكبٌرة‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
24
0202
‫م‬
–
5221
‫هـ‬
‫عن‬ ‫اإلنسان‬ ‫ٌعجز‬ ً‫الت‬ ‫المختلفة‬ ‫و‬ ‫الواسعة‬ ‫المعلومات‬
‫و‬ ‫حفظها‬
‫ذاكرته‬ ‫باستعمال‬ ‫استعادتها‬
‫بحل‬ ً‫ذات‬ ‫بشكل‬ ‫ٌموم‬ ‫أن‬ ‫عن‬ ‫ٌعجز‬ ‫فهو‬ .‫العادٌة‬
‫أي‬
‫عمله‬ ‫أن‬ ‫أي‬ ،‫بسٌطة‬ ‫كانت‬ ‫مهما‬ ‫مسألة‬
ً‫الت‬ ‫للمسابل‬ ‫الحلول‬ ‫إنجاز‬ ً‫ف‬ ‫ٌنحصر‬
‫تبرمج‬
‫العلمٌة‬ ‫األسس‬ ‫مع‬ ‫ٌتوافك‬ ‫صحٌح‬ ‫بشكل‬ ‫له‬
‫هذه‬ ‫علٌها‬ ‫تعتد‬ ً‫الت‬ ‫الصحٌحة‬
‫الحلول‬
.
‫المس‬ ‫لحل‬ ‫الالزمة‬ ‫الضرورٌة‬ ‫الخطوات‬ ‫الفصل‬ ‫هذا‬ ً‫ف‬ ‫نستعرض‬ ‫سوف‬ ‫لذا‬
‫ابل‬
‫باستخدام‬
‫خرابط‬ ‫و‬ ‫الخوارزمٌات‬ ‫لمفهوم‬ ً‫ال‬‫مفص‬ ً‫ا‬‫توضٌح‬ ‫وكذلن‬ ً‫االلكترون‬ ‫الحاسب‬
‫سٌر‬
‫العملٌات‬
‫البرمجة‬ ‫لكٌفٌة‬ ً‫األساس‬ ‫العنصر‬ ‫تشكل‬ ً‫الت‬
.
ٕٔ
-
ٕ
:‫الحاسب‬ ‫باستخدام‬ ‫مسألة‬ ‫حل‬ ‫خطوات‬
‫بإٌجاز‬ ‫نبٌنها‬ ‫خطوات‬ ‫بإتباع‬ ‫المعالجة‬ ‫تتم‬ ً‫االلكترون‬ ‫الحاسب‬ ‫باستعمال‬ ‫مسألة‬ ‫أي‬ ‫حل‬ ‫عند‬
:ً‫ٌل‬ ‫فٌما‬
•
:‫المسألة‬ ‫وتحلٌل‬ ‫تعرٌف‬
‫معروفة‬ ‫ٌجعلها‬ ‫بحٌث‬ ‫المسألة‬ ‫تطبٌك‬ ً‫ف‬ ‫التعبٌر‬ ‫دلة‬ ‫عن‬ ‫عبارة‬ ‫هو‬ ‫المسألة‬ ‫تعرٌف‬ ‫إن‬
‫مجال‬ ‫ضمن‬ ‫العاملٌن‬ ‫األشخاص‬ ‫لجمٌع‬ ‫غموض‬ ‫أي‬ ‫وبدون‬ ‫واضحة‬ ‫بصورة‬ ‫ومفهومة‬
.‫المسألة‬ ‫له‬ ‫تخضع‬ ‫الذي‬ ‫االختصاص‬
‫المصا‬ ‫أصعب‬ ‫فهو‬ ‫الحل‬ ‫طرٌمة‬ ‫ووضع‬ ‫المسألة‬ ‫تحلٌل‬ ‫أما‬
‫أجل‬ ‫من‬ ‫و‬ ،‫الخطوات‬ ‫أشك‬ ‫و‬ ‫عب‬
‫ٌجب‬ ‫المسألة‬ ‫لحل‬ ‫المناسبة‬ ‫الرٌاضٌة‬ ‫والطرق‬ ‫الموانٌن‬ ‫من‬ ‫كثٌر‬ ‫فإن‬ ‫صحٌح‬ ‫حل‬ ‫إلى‬ ‫الوصول‬
ً‫ف‬ ‫الحل‬ ‫تناسب‬ ‫لنجعلها‬ ‫والطرق‬ ‫الموانٌن‬ ‫هذه‬ ‫تطوٌر‬ ‫إلى‬ ً‫ا‬‫أٌض‬ ‫تحتاج‬ ‫لربما‬ ‫و‬ ‫تستعمل‬ ‫أن‬
:‫تحدٌد‬ ‫ٌجب‬ ‫الخطوة‬ ‫هذه‬ ً‫فف‬ ‫األحٌان‬ ‫من‬ ‫كثٌر‬
•
‫المخرجات(النتاب‬ ‫طبٌعة‬
.‫كتابتها‬ ‫تنظٌم‬ ‫و‬ )‫ج‬
•
.ً‫االلكترون‬ ‫الحاسب‬ ‫إلى‬ ‫إدخالها‬ ‫تنظٌم‬ ‫و‬ ‫نوعها‬ ‫تحدٌد‬ ‫و‬ )‫المعلومات‬ ‫أو‬ ‫(البٌانات‬ ‫المدخالت‬
•
‫ضوء‬ ً‫ف‬ ‫و‬ ً‫االلكترون‬ ‫بالحاسب‬ ‫تنفٌذها‬ ‫كٌفٌة‬ ‫مع‬ ‫ٌتالءم‬ ‫بما‬ ‫تمٌٌمها‬ ‫و‬ ‫المناسبة‬ ‫الحل‬ ‫طرق‬
.‫األفضل‬ ‫الحل‬ ‫اختٌار‬ ‫ٌتم‬ ‫ذلن‬
•
:ً‫ا‬ٌ‫خط‬ ‫الحل‬ ‫برمجة‬
‫طر‬ ‫اختٌار‬ ‫بعد‬
‫عنها‬ ‫التعبٌر‬ ‫ٌتم‬ ،‫رٌاضٌة‬ ‫عاللات‬ ‫من‬ ‫تشمله‬ ‫ما‬ ‫كل‬ ‫تحدٌد‬ ‫و‬ ‫المثالٌة‬ ‫الحل‬ ‫ٌمة‬
‫حل‬ ‫إلى‬ ‫الوصول‬ ‫إلى‬ ‫تؤدي‬ ‫الوصف‬ ‫دلٌمة‬ ،ً‫ا‬ٌ‫منطم‬ ‫ومترابطة‬ ‫متسلسلة‬ ‫خطوات‬ ‫شكل‬ ‫على‬
‫المسألة‬ ‫بخوارزمٌة‬ ‫تعرف‬ ‫المتسلسلة‬ ‫الخطوات‬ ‫هذه‬ ‫و‬.‫المسألة‬
Algorithm of the
Problem
‫الخوارزمٌة‬ ‫هذه‬ ‫تمثٌل‬ ‫ٌمكن‬ ‫و‬
‫المتسلسلة‬ ‫واألوامر‬ ‫التعلٌمات‬ ‫جمٌع‬ ‫إٌضاح‬ ‫بعد‬
‫العملٌات‬ ‫سٌر‬ ‫بمخطط‬ ‫ٌدعى‬ ً‫تسلسل‬ ً‫وصف‬ ‫بمخطط‬ ‫خطوة‬ ‫كل‬ ً‫ف‬ ‫تنفٌذها‬ ‫ٌراد‬ ً‫الت‬
Flowchart
‫كلمة‬ ‫إن‬ .‫الرمزٌة‬ ‫االصطالحٌة‬ ‫األشكال‬ ‫من‬ ‫مجموعة‬ ‫باستخدام‬ ‫وذلن‬
Algorithm
‫بوضع‬ ‫لام‬ ‫الذي‬ ً‫الخوارزم‬ ‫المشهور‬ ً‫العرب‬ ‫العالم‬ ‫إلى‬ ‫نسبة‬ ‫مشتمة‬
‫حل‬ ‫أسس‬
.ً‫تتابع‬ ‫بشكل‬ ‫المسابل‬
•
:‫البرمجة‬ ‫لغات‬ ‫إحدى‬ ‫باستخدام‬ ‫الحل‬ ‫برمجة‬
‫بالنسبة‬ ‫المالحظة‬ ‫سهل‬ ‫مساعد‬ ‫تصوري‬ ‫تخطٌط‬ ‫عن‬ ‫عبارة‬ ‫هو‬ ‫العملٌات‬ ‫سٌر‬ ‫مخطط‬ ‫إن‬
‫بمخطط‬ ‫الممثلة‬ ‫الحل‬ ‫طرٌمة‬ ‫فإن‬ ‫لذلن‬ ،ً‫االلكترون‬ ‫الحاسب‬ ‫عند‬ ‫مفهوم‬ ‫غٌر‬ ‫لكنه‬ ‫و‬ ‫للمبرمج‬
‫ل‬ ‫بإحدى‬ ‫تكتب‬ ‫أن‬ ‫ٌجب‬ ‫العملٌات‬ ‫سٌر‬
.‫المسألة‬ ‫حل‬ ‫مع‬ ‫تتالءم‬ ً‫الت‬ ‫و‬ ‫ٌفهمها‬ ً‫الت‬ ‫الحاسب‬ ‫غات‬
‫و‬ ‫الحاسب‬ ‫إلى‬ ‫البرنامج‬ ‫إدخال‬ ‫و‬ ‫المناسب‬ ً‫الخارج‬ ‫الوسط‬ ‫على‬ ‫البرنامج‬ ‫كتابة‬ ‫ذلن‬ ً‫ٌل‬ ‫و‬
‫بالبرنامج‬ ‫ٌسمى‬ ‫الرالٌة‬ ‫أو‬ ‫الرمزٌة‬ ‫اللغات‬ ‫بإحدى‬ ‫المكتوبة‬ ‫و‬ ‫الخطوة‬ ‫هذه‬ ‫من‬ ‫الناتج‬ ‫البرنامج‬
‫المصدري‬
source program
.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
25
0202
‫م‬
–
5221
‫هـ‬
•
‫ال‬ ‫ترجمة‬
:‫المصدري‬ ‫برنامج‬
‫كتابته‬ ‫صحة‬ ‫من‬ ‫للتأكد‬ ‫الحاسب‬ ‫إلى‬ ‫إدخاله‬ ‫ٌتعٌن‬ ‫المصدري‬ ‫البرنامج‬ ‫كتابة‬ ‫من‬ ‫االنتهاء‬ ‫بعد‬
‫وجود‬ ‫عدم‬ ‫حالة‬ ً‫ف‬ ‫الخاص‬ ‫الترجمة‬ ‫برنامج‬ ‫بواسطة‬ ‫اﻵلة‬ ‫لغة‬ ‫إلى‬ ‫لترجمته‬ ‫ثم‬ ،‫جهة‬ ‫من‬
:‫اﻵتٌة‬ ‫المراحل‬ ً‫ف‬ ‫الترجمة‬ ‫عملٌة‬ ‫تمر‬ ‫و‬ .‫المصدري‬ ‫البرنامج‬ ً‫ف‬ ‫أخطاء‬
ٔ
‫ال‬ ‫مرحلة‬ .
ً‫المعجم‬ ‫تحلٌل‬
Lexical analysis
:
‫المسموح‬ ‫تلن‬ ‫مع‬ ‫األسماء‬ ‫و‬ ‫والعاللات‬ ‫المصدر‬ ‫برنامج‬ ‫مفردات‬ ‫مطابمة‬ ‫ٌتم‬ ‫المرحلة‬ ‫هذه‬ ً‫ف‬
.‫فٌها‬ ‫أخطاء‬ ‫أي‬ ‫اكتشاف‬ ‫و‬ ‫اللغة‬ ً‫ف‬ ‫بها‬
ٕ
‫والنحوي‬ ‫اللغوي‬ ‫التحلٌل‬ ‫مرحلة‬ .
Syntax analysis
:
‫المصد‬ ‫البرنامج‬ ‫تعلٌمات‬ ‫مطابمة‬ ‫عملٌة‬ ‫تجري‬ ‫المرحلة‬ ‫هذه‬ ً‫ف‬
‫اللغوٌة‬ ‫المواعد‬ ‫مع‬ ‫ري‬
‫إلى‬ ‫المصدري‬ ‫البرنامج‬ ‫تحوٌل‬ ‫عملٌة‬ ‫إلى‬ ‫باإلضافة‬ ،‫فٌها‬ ‫أخطاء‬ ‫أي‬ ‫اكتشاف‬ ‫و‬ ،‫المستخدمة‬
.‫التجمٌع‬ ‫بلغة‬ ‫رمزٌة‬ ‫أوامر‬ ‫و‬ ‫تعلٌمات‬
ٖ
:‫اﻵلة‬ ‫لغة‬ ‫إلى‬ ‫البرنامج‬ ‫ترجمة‬ ‫مرحلة‬.
ً‫الهدف‬ ‫البرنامج‬ ‫على‬ ‫نحصل‬ ‫المرحلة‬ ‫هذه‬ ً‫ف‬
object program
‫ٌمكن‬ ‫بموجبه‬ ‫الذي‬ ‫و‬
‫البدء‬
.‫التنفٌذ‬ ‫عملٌة‬ ً‫ف‬
•
:‫تنفٌذه‬ ‫و‬ ‫البرنامج‬ ‫تجربة‬
‫عٌنة‬ ‫باستخدام‬ ‫وذلن‬ ً‫ا‬ٌ‫منطم‬ ‫صحته‬ ‫من‬ ‫للتأكد‬ ‫تجربته‬ ‫تتم‬ ،ً‫الهدف‬ ‫البرنامج‬ ‫على‬ ‫الحصول‬ ‫بعد‬
‫االختبارٌة‬ ‫المعطٌات‬ ‫من‬
Test
Data
‫الخارجة‬ ‫النتابج‬ ‫بمطابمة‬ ‫الحل‬ ‫طرٌمة‬ ‫صحة‬ ‫ثبت‬ ‫فإذا‬
‫علٌها‬ ‫الحصول‬ ‫تم‬ ً‫الت‬ ‫النتابج‬ ‫مع‬ ‫الحاسب‬ ‫من‬
‫البرنامج‬ ‫تنفٌذ‬ ‫ٌمكن‬ ،‫المثال‬ ‫سبٌل‬ ‫على‬ ً‫ا‬ٌ‫ٌدو‬
.‫الحمٌمٌة‬ ‫المعطٌات‬ ‫على‬
12-3
‫سٌر‬ ‫خرابط‬ ‫مفهوم‬
‫العملٌات‬
:
‫مضبوطة‬ ‫بصورة‬ ‫تصف‬ ً‫الت‬ ‫المتسلسلة‬ ‫الخطوات‬ ‫من‬ ‫مجموعة‬ ‫عن‬ ‫عبارة‬ ً‫ه‬ ‫الخوارزمٌة‬
‫هذا‬ ‫ولكن‬ .‫ما‬ ‫مسألة‬ ‫لحل‬ ‫الالزمة‬ ‫والمنطمٌة‬ ‫الرٌاضٌة‬ ‫الخطوات‬ ‫جمٌع‬ ‫غموض‬ ‫أي‬ ‫وبدون‬
‫سٌر‬ ‫خرٌطة‬ ‫فإن‬ ‫لذلن‬ ‫والتتبع‬ ‫المالحظة‬ ‫وصعب‬ َ‫ا‬‫معمد‬ ‫ٌكون‬ ‫األحٌان‬ ‫من‬ ‫كثٌر‬ ً‫ف‬ ‫الوصف‬
‫تص‬ ً‫ا‬‫وصف‬ ‫تمثل‬ ً‫الت‬ ‫العملٌات‬
‫سٌر‬ ‫وخرٌطة‬ .ً‫ا‬‫وضوح‬ ‫أكثر‬ ‫تكون‬ ‫الخوارزمٌة‬ ‫لخطوات‬ ً‫ا‬ٌ‫وٌر‬
‫المسألة‬ ‫لحل‬ ً‫المنطم‬ ‫التسلسل‬ ‫تتبع‬ ‫مالحظة‬ ‫بواسطتها‬ ‫وٌمكن‬ ‫الخوارزمٌة‬ ‫ممام‬ ‫تموم‬ ‫العملٌات‬
‫من‬ ‫بكثٌر‬ ‫أسهل‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫من‬ ‫الخوارزمٌة‬ ‫استخراج‬ ‫تكون‬ ‫ما‬ ً‫ا‬‫وغالب‬ ،‫سهولة‬ ‫بكل‬
.‫مباشرة‬ ‫الخوارزمٌة‬ ‫كتابة‬
‫رسم‬ ‫عند‬ ‫و‬
‫الرمزٌة‬ ‫األشكال‬ ‫من‬ ‫مجموعة‬ ‫نستخدم‬ ‫فإننا‬ ‫معٌنة‬ ‫لمسألة‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬
:ً‫التال‬ ‫الجدول‬ ً‫ف‬ ‫المبٌنة‬ ‫االصطالحٌة‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
26
0202
‫م‬
–
5221
‫هـ‬
،‫ما‬ ‫لمسألة‬ ‫البرنامج‬ ‫كتابة‬ ‫لبل‬ ‫العملٌات‬ ‫سٌر‬ ‫خرابط‬ ‫استخدام‬ ‫فوابد‬ ‫أهم‬ ‫من‬
:ً‫ٌأت‬ ‫ما‬
ٔ
‫السٌطرة‬ ‫و‬ ‫حلها‬ ‫المراد‬ ‫بالمسألة‬ ‫الكامل‬ ‫اإللمام‬ ‫من‬ ‫المبرمج‬ ‫تمكن‬ .
‫بحٌث‬ ‫أجزابها‬ ‫كل‬ ‫على‬
‫المنطمٌة‬ ‫األخطاء‬ ‫اكتشاف‬ ‫على‬ ‫تساعده‬
(Logic Error)
ً‫الت‬ ‫األخطاء‬ ‫أهم‬ ‫من‬ ‫تعتبر‬ ً‫الت‬ ‫و‬
.‫المبرمج‬ ‫تجهد‬
ٕ
.‫النظر‬ ‫بمجرد‬ ‫الموضوعة‬ ‫البرامج‬ ‫تعدٌل‬ ‫على‬ ‫سهولة‬ ‫و‬ ‫بٌسر‬ ‫تساعد‬ .
3.
ٌ ‫إذ‬ ً‫ا‬‫مهم‬ ً‫ا‬‫أمر‬ ‫معٌنة‬ ‫مسابل‬ ‫لحلول‬ ‫العملٌات‬ ‫سٌر‬ ‫خرابط‬ ‫برسوم‬ ‫االحتفاظ‬ ‫ٌعتبر‬
‫كون‬
‫إلى‬ ‫الحاجة‬ ‫دون‬ ‫مشابهة‬ ‫أخرى‬ ‫مسابل‬ ‫لحل‬ ‫استخدامها‬ ‫أو‬ ‫علٌها‬ ‫تعدٌالت‬ ‫إجراء‬ ‫عند‬ ً‫ا‬‫مرجع‬
‫بسٌطة‬ ‫واضحة‬ ‫خطوات‬ ً‫ف‬ ‫صٌغت‬ ‫لد‬ ‫األولى‬ ‫الحلول‬ ‫أن‬ ‫باعتبار‬ ‫األول‬ ‫المبرمج‬ ‫إلى‬ ‫الرجوع‬
.‫مفهومة‬ ‫و‬
ٗ
.‫الكثٌرة‬ ‫التفرعات‬ ‫ذات‬ ‫البرامج‬ ‫كتابة‬ ً‫ف‬ ‫ومساعدة‬ ‫مناسبة‬ ‫وسٌلة‬ ‫توفٌر‬ .
‫تص‬ ‫ٌمكن‬ ‫و‬ ‫هذا‬
:ً‫ٌل‬ ‫بما‬ ‫العملٌات‬ ‫سٌر‬ ‫خرابط‬ ‫نٌف‬
•
‫البسٌط‬ ‫التتابع‬ ‫خرابط‬
(Simple sequential Flowchart)
.
•
‫التفرع‬ ‫خرابط‬
(Branched Flowchart)
.
•
‫البسٌط‬ ‫الدوران‬ ‫خرابط‬
(Loop Flowchart)
.
•
‫المتداخلة‬ ‫الدورانات‬ ‫خرابط‬
(Nested)
.
‫هذ‬ ‫من‬ ‫واحد‬ ‫نوع‬ ‫من‬ ‫أكثر‬ ‫على‬ ‫ٌشتمل‬ ‫أن‬ ‫الواحد‬ ‫للبرنامج‬ ‫ٌمكن‬ ‫و‬
‫فٌما‬ ‫سنتناول‬ ‫و‬ .‫األنواع‬ ‫ه‬
.‫التفصٌل‬ ‫من‬ ‫بشًء‬ ‫األنواع‬ ‫هذه‬ ‫شرح‬ ً‫ٌأت‬
12-4
‫التتابع‬ ‫خرابط‬
‫البسٌط‬
:
‫التفرعات‬ ‫من‬ ‫النوع‬ ‫هذا‬ ‫ٌخلو‬
Branches
‫الدورانات‬ ‫و‬
loops
‫لهذا‬ ‫العام‬ ‫الشكل‬ ‫ٌكون‬ ‫و‬ ،
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
27
0202
‫م‬
–
5221
‫هـ‬
‫الشكل‬ ً‫ف‬ ‫مبٌن‬ ‫هو‬ ‫كما‬ ‫النوع‬
ٕٔ
-
ٔ
:
‫الشكل‬
ٕٔ
-
ٔ
‫خرابط‬
‫التتابع‬
‫البسٌط‬
‫كلمة‬ ‫و‬
Event
‫شكل‬ ً‫ف‬ ‫الواردة‬
ٕٔ
-
ٔ
.‫تنفٌذها‬ ‫المطلوب‬ ‫العملٌة‬ ‫أو‬ ‫الحدث‬ ً‫تعن‬
‫معلوم‬ ‫لطرها‬ ‫نصف‬ ‫دابرة‬ ‫محٌط‬ ‫و‬ ‫مساحة‬ ‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫أرسم‬ : ‫مثال‬
R
.
‫تساوي‬ ‫و‬ ‫ثابتة‬ ‫العددٌة‬ ‫ولٌمتها‬
ٖ.ٔٗ
‫بٌنما‬
R
.‫متغٌر‬
‫الشكل‬ ً‫ف‬ ‫المبٌنة‬ ‫الحل‬ ‫خطوات‬ ‫وتكون‬
ٕٔ
-
ٕ
:ً‫ٌل‬ ‫كما‬
ٔ
.‫ابدأ‬.
ٕ
‫ال‬.
‫لٌمة‬ ‫رأ‬
R
.
ٖ
‫لٌمة‬ ‫ضع‬ .
3.14=PIE
ٗ
‫المساحة‬ ‫احسب‬ .
(A)
‫من‬
‫المعادلة‬
A =(PIE)*R*R
.
٘
‫المحٌط‬ ‫احسب‬ .
(C)
‫من‬
‫المعادلة‬
C =2*(PIE)*R
.
ٙ
‫من‬ ‫كل‬ ‫لٌم‬ ‫اطبع‬ .
C, A, R
.
7
.‫تولف‬ .
‫الشكل‬
ٕٔ
-
ٕ
‫المتغٌرات‬ ‫من‬ ‫كل‬ ‫لٌمة‬ ‫لحساب‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬:‫مثال‬
C, B, A
‫المعادلة‬ ً‫ف‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
28
0202
‫م‬
–
5221
‫هـ‬
:‫اﻵتٌة‬
‫من‬ ‫كل‬ ‫لٌم‬ ‫أن‬ ‫علمت‬ ‫إذا‬
Y, X
‫من‬ ‫كل‬ ‫لٌم‬ ‫اطبع‬ ‫ثم‬ ،)‫(معلومة‬ ‫معطاة‬
C, B, A, Y, X
.
‫المتغٌر‬ ‫لٌمة‬ ‫حساب‬ ‫من‬ ‫ٌمكننا‬ ‫أنه‬ ‫الواضح‬ ‫من‬ :‫الحل‬
A
(‫المعادلة‬ ً‫ف‬
ٔ
‫بمٌم‬ ‫لمعرفتنا‬ )
‫األولٌة‬ ‫المعطٌات‬
Y, X
‫المتغٌر‬ ‫لٌمة‬ ‫حساب‬ ‫من‬ ‫وٌمكننا‬ ،
B
( ‫المعادلة‬ ً‫ف‬
ٕ
‫باالعتما‬ )
‫على‬ ‫د‬
‫لٌمة‬
X
‫المتغٌر‬ ‫ولٌمة‬ ‫لدٌنا‬ ‫المعلومة‬
A
‫المتغٌر‬ ‫لٌمة‬ ‫أما‬ ،‫السابمة‬ ‫الخطوة‬ ً‫ف‬ ‫المحسوبة‬
C
ً‫ف‬
( ‫المعادلة‬
ٖ
‫المتغٌرات‬ ‫من‬ ‫كل‬ ‫لٌم‬ ‫على‬ ‫باالعتماد‬ )
B, A, X
.‫معلومة‬ ‫وكلها‬
‫الشكل‬ ً‫ف‬ ‫مبٌن‬ ‫هو‬ ‫كما‬ ‫المسألة‬ ‫حل‬ ‫خطوات‬ ‫وتكون‬
ٕٔ
-
ٖ
:ً‫ٌل‬ ‫كما‬
ٔ
.‫ابدأ‬.
ٕ
‫من‬ ‫كل‬ ‫لٌمة‬ ‫الرأ‬.
Y, X
.
ٖ
‫اح‬.
‫لٌمة‬ ‫سب‬
A
‫المعادلة‬ ‫من‬
(
ٔ
.)
ٗ
‫لٌمة‬ ‫احسب‬.
B
‫المعادلة‬ ‫من‬
(
ٕ
.)
٘
‫لٌمة‬ ‫احسب‬.
C
‫المعادلة‬ ‫من‬
(
ٖ
.)
ٙ
‫من‬ ‫كل‬ ‫لٌمة‬ ‫اطبع‬.
C, B, A,
Y, X
.
7
.‫تولف‬.
‫الشكل‬
ٕٔ
-
ٖ
ٕٔ
-
٘
:‫التفرع‬ ‫خرابط‬
،‫أكثر‬ ‫أو‬ ‫اختٌارٌن‬ ‫بٌن‬ ‫مفاضلة‬ ‫أو‬ ‫لرار‬ ‫التخاذ‬ ‫الحاجة‬ ‫بسبب‬ ‫البرامج‬ ً‫ف‬ ‫التفرع‬ ‫وٌحدث‬
‫شكل‬ ‫المرار(انظر‬ ‫تنفٌذ‬ ً‫ف‬ ‫أسلوبان‬ ‫وهنان‬
ٕٔ
-
ٗ
.)
‫تفرعٌن‬ ‫ذو‬ ‫لرار‬ ‫ثالثة‬ ‫ذو‬ ‫لرار‬
‫تفرعات‬
‫الشكل‬
ٕٔ
-
ٗ
‫شكل‬ ‫(انظر‬ ‫اﻵتٌتٌن‬ ‫الصورتٌن‬ ‫إحدى‬ ‫تأخذ‬ ‫أن‬ ‫ٌمكن‬ ‫التفرع‬ ‫خرابط‬ ‫فإن‬ ‫عام‬ ‫وبشكل‬
ٕٔ
-
٘
‫و‬
‫الشكل‬
ٕٔ
-
ٙ
.)
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
29
0202
‫م‬
–
5221
‫هـ‬
‫الشكل‬
12-5 ‫الشكل‬
12-6
‫شكل‬ ‫أن‬ ‫مالحظة‬ ‫ٌمكننا‬
ٕٔ
-
٘
‫الشرط‬ ‫جواب‬ ‫كان‬ ‫إذا‬ ‫أنه‬ ‫ٌبٌن‬
YSE (Condition)
‫فإن‬
‫الحدث‬ ‫ٌكون‬ ‫التنفٌذ‬ ً‫ف‬ ً‫التال‬ ‫الحدث‬
(a)
‫الجواب‬ ‫كان‬ ‫إذا‬ ‫أما‬
NO
‫ٌكون‬ ً‫التال‬ ‫الحدث‬ ‫فإن‬
‫الحدث‬
(b)
‫الشكل‬ ً‫ف‬ ‫نالحظ‬ ‫أن‬ ‫ٌمكننا‬ ‫كما‬
ٕٔ
-
ٙ
‫الشرط‬ ‫جواب‬ ‫كان‬ ‫إذا‬ ‫أنه‬
YSE
‫الحدث‬ ‫فإن‬
‫الحدث‬ ‫ٌكون‬ ‫التنفٌذ‬ ً‫ف‬ ً‫التال‬
(a)
‫الحدث‬ ‫ٌتبعه‬ ‫ثم‬
(b)
‫الشرط‬ ‫جواب‬ ‫كان‬ ‫إذا‬ ‫أما‬
NO
‫فإن‬
‫الحدث‬ ‫ٌكون‬ ً‫التال‬ ‫الحدث‬
(b)
.‫مباشرة‬
‫االلتران‬ ‫لٌمة‬ ‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬:‫مثال‬
F(x)
:‫التالٌة‬ ‫الماعدة‬ ‫حسب‬ ‫المعرف‬
X if X>=0
F(X) =
‫׀‬
X
‫׀‬
-X if X<0
‫كلمة‬ ‫حٌث‬
(if)
.‫عندما‬ ً‫تعن‬ ‫هنا‬
‫الشكل‬ ً‫ف‬ ‫المبٌنة‬ ‫الحل‬ ‫خطوات‬
ٕٔ
-
7
:‫تكون‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
31
0202
‫م‬
–
5221
‫هـ‬
ٔ
.
‫ابدأ‬
ٕ
‫المتغٌر‬ ‫لٌمة‬ ‫الرأ‬ .
X
.
ٖ
.
‫كانت‬ ‫إذا‬
X
‫اذهب‬ ‫ا‬ً‫صفر‬ ‫تساوي‬ ‫أو‬ ‫أكبر‬
(‫خطوة‬ ‫إلى‬
ٗ
(‫الخطوة‬ ‫إلى‬ ‫فأذهب‬ ‫وإال‬ )
٘
.)
ٗ
‫من‬ ‫االلتران‬ ‫لٌمة‬ ‫احسب‬.
F(X)=X
‫ثم‬
(‫الخطوة‬ ‫إلى‬ ‫اذهب‬
ٙ
.)
٘
‫من‬ ‫االلتران‬ ‫لٌمة‬ ‫احسب‬.
F(x)= -X
.
ٙ
.
‫من‬ ‫كل‬ ‫لٌمة‬ ‫اطبع‬
X
،
F(x)
.
7
.‫تولف‬ .
‫الشكل‬
ٕٔ
-
7
‫لٌمة‬ ‫لحساب‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬:‫مثال‬
W
‫لٌمة‬ ‫بأن‬ ‫ا‬ً‫م‬‫عل‬ ‫اﻵتٌة‬ ‫للمعادالت‬ ‫ا‬ً‫م‬‫طب‬
‫المتغٌر‬
X
:‫معلومة‬ ‫معطاة‬
‫الشكل‬ ً‫ف‬ ‫مبٌنة‬ ً‫ه‬ ‫كما‬ ‫الحل‬ ‫خطوات‬
ٕٔ
-
4
:
W=
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
30
0202
‫م‬
–
5221
‫هـ‬
ٔ
.‫ابدأ‬ .
ٕ
.
‫المتغٌر‬ ‫لٌمة‬ ‫الرأ‬
X
.
ٖ
‫كانت‬ ‫إذا‬ .
X
‫فاذهب‬ ‫صفر‬ ‫من‬ ‫أكبر‬
‫الخطوة‬ ‫إلى‬
ٗ
‫لٌست‬ ‫كانت‬ ‫إذا‬ ‫أما‬
‫خطوة‬ ‫إلى‬ ‫فاذهب‬ ‫من‬ ‫أكبر‬
٘
.
ٗ
‫احسب‬ .
W
( ‫المعادلة‬ ‫من‬
ٔ
‫ثم‬ )
‫الخطوة‬ ‫إلى‬ ‫اذهب‬
4
.
٘
‫كانت‬ ‫إذا‬ .
X
‫فاذهب‬ ‫صفر‬ ‫تساوي‬
‫الخطوة‬ ‫إلى‬
ٙ
‫إلى‬ ‫فاذهب‬ ‫وإال‬
‫الخطوة‬
7
.
ٙ
‫احسب‬ .
W
( ‫المعادلة‬ ‫من‬
ٕ
‫ثم‬ )
‫ا‬
‫الخطوة‬ ‫إلى‬ ‫ذهب‬
4
.
7
‫احسب‬ .
W
( ‫المعادلة‬ ‫من‬
ٖ
‫ثم‬ )
‫الخطوة‬ ‫إلى‬ ‫اذهب‬
9
.
4
‫لٌمة‬ ‫اطبع‬ .
W
.
9
.‫تولف‬ .
‫الشكل‬
12-8
ٕٔ
-
ٙ
:‫البسٌط‬ )‫(التكرار‬ ‫الدوران‬ ‫خرابط‬
‫ًا‬‫د‬‫محدو‬ ‫ًا‬‫د‬‫عد‬ ‫البرنامج‬ ً‫ف‬ ‫العملٌات‬ ‫من‬ ‫مجموعة‬ ‫أو‬ ‫عملٌة‬ ‫إلعادة‬ ‫إلٌها‬ ‫نحتاج‬ ‫الخرابط‬ ‫وهذه‬
‫غٌر‬ ‫أو‬
‫الشكل‬ ‫(انظر‬ ً‫ٌل‬ ‫كما‬ ‫الخرابط‬ ‫هذه‬ ‫لمثل‬ ‫العام‬ ‫الشكل‬ ‫وٌكون‬ ،‫المرات‬ ‫من‬ ‫محدود‬
ٕٔ
-
9
.)
‫الحدث‬
(a)
‫كل‬ ً‫ف‬ ‫تنفٌذه‬ ‫ٌتكرر‬ ‫الحدث‬
(a)
‫كل‬ ً‫ف‬ ‫تنفٌذه‬ ‫ٌتكرر‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
32
0202
‫م‬
–
5221
‫هـ‬
‫الشرط‬ ‫جواب‬ ‫ٌصبح‬ ‫حتى‬ ‫دوره‬
YES
.
‫الشرط‬ ‫جواب‬ ‫كان‬ ‫طالما‬ ‫دورة‬
YES
.
‫الشكل‬
ٕٔ
-
9
‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬ :‫مثال‬
‫ألطارها‬ ‫أنصاف‬ ‫الدوابر‬ ‫من‬ ‫مجموعة‬ ‫مساحة‬
:‫معلومة‬
‫الشكل‬ ً‫ف‬ ‫المبٌنة‬ ‫الحل‬ ‫خطوات‬ ‫تكون‬
ٕٔ
-
ٔٓ
:ً‫ٌل‬ ‫كما‬
ٔ
.
.‫ابدأ‬
ٕ
.
‫الدابرة‬ ‫لطر‬ ‫نصف‬ ‫الرأ‬
(R)
.
ٖ
.
‫الدابرة‬ ‫مساحة‬ ‫أوجد‬
(A)
.
ٗ
.
‫من‬ ‫كل‬ ‫لٌم‬ ‫اطبع‬
A, R
.
٘
.
‫الدوابر؟‬ ‫من‬ ‫مزٌد‬ ‫هنان‬ ‫هل‬
(‫الخطوة‬ ‫إلى‬ ‫فعد‬ ‫نعم‬ ‫كان‬ ‫فإن‬
ٕ
‫ال‬ ‫كان‬ ‫وإن‬ )
‫الخطوة‬ ‫إلى‬ ‫فعد‬
(
ٙ
.)
ٙ
.
.‫تولف‬
‫الشكل‬
ٕٔ
-
ٔٓ
12-7
‫العداد‬
Counter:
‫العد‬ ‫إلى‬ ً‫االلكترون‬ ‫الحاسب‬ ‫برامج‬ ً‫ف‬ ‫نحتاج‬ ‫األحٌان‬ ‫من‬ ‫كثٌر‬ ً‫ف‬
Counting
‫نرٌد‬ ‫فمد‬ ،
‫سهلة‬ ‫العملٌة‬ ‫هذه‬ ‫تكون‬ ‫ولد‬ ،‫الشعبة‬ ‫ضمن‬ ‫والطالبات‬ ‫الطالب‬ ‫من‬ ‫كل‬ ‫عدد‬ ‫نعد‬ ‫أن‬ ً‫ال‬‫مث‬
‫ٌحتاج‬ ‫الحاسب‬ ‫أن‬ ‫إال‬ ،‫الطفولة‬ ‫من‬ ‫ٌكتسبها‬ ً‫الت‬ ‫العملٌة‬ ‫لدراته‬ ‫ضمن‬ ‫أصبحت‬ ‫ألنها‬ ‫لإلنسان‬
‫للعد‬ ‫خوارزمٌة‬ ‫تصمٌم‬ ‫إلى‬
Counting Algorithm
‫اتبعتها‬ ‫إذا‬ ‫معٌنة‬ ‫خطوات‬ ‫تتضمن‬
‫أن‬ ‫استطاع‬
.‫ٌعد‬
:‫األساسٌة‬ ‫الخطوات‬ ً‫ف‬ ‫العد‬ ‫من‬ ‫ٌتمكن‬ ‫حتى‬ ‫الحاسب‬ ‫ٌتبعها‬ ً‫الت‬ ‫الخطوات‬ ‫تحدٌد‬ ‫وٌمكن‬
ٔ
.‫للصفر‬ ‫ًا‬ٌ‫مساو‬ ‫العداد‬ ‫اجعل‬.
ٕ
:‫أن‬ ‫أي‬ ،‫واحد‬ ‫زابد‬ ‫لها‬ ‫المدٌمة‬ ‫المٌمة‬ ‫تساوي‬ ‫للعداد‬ ‫الجدٌدة‬ ‫المٌمة‬ ‫اجعل‬.
+)‫(المدٌمة‬ ‫العداد‬ ‫لٌمة‬ =)‫(الجدٌدة‬ ‫العداد‬ ‫لٌمة‬
ٔ
ٖ
‫ابت‬ ‫الخطوات‬ ‫كرر‬.
‫الخطوة‬ ‫من‬ ‫داء‬
ٕ
.
‫من‬ ‫الطبٌعٌة‬ ‫األعداد‬ ‫لطباعة‬ ‫الحاسب‬ ‫ٌتبعها‬ ً‫الت‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬ :‫مثال‬
ٔ
‫إلى‬
ٔٓٓ
.‫ومربعاتها‬
‫الشكل‬ ً‫ف‬ ‫مبٌنة‬ ‫الحل‬ ‫خطوات‬ :‫الحل‬
ٕٔ
-
ٔٔ
:ً‫ه‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
33
0202
‫م‬
–
5221
‫هـ‬
ٔ
.
.‫ابدأ‬
ٕ
.
‫اجعل‬
I=0
.
ٖ
.
‫اجعل‬
I=I+1
.
ٗ
.
‫اجعل‬
.
٘
.
‫اطبع‬
J, I
.
ٙ
.
‫كانت‬ ‫إذا‬
I=100
‫الخطوة‬ ‫إلى‬ ‫اذهب‬
7
‫الخطوة‬ ‫إلى‬ ‫اذهب‬ ‫وإال‬
ٖ
.
7
.
.‫تولف‬
‫الشكل‬
ٕٔ
-
ٔٔ
ٕٔ
-
4
:‫اإلجمالٌة‬ ‫المجامٌع‬
‫من‬ ‫كبٌرة‬ ‫مجموعة‬ ‫جمع‬ ‫إلى‬ ً‫اإللكترون‬ ‫الحاسب‬ ‫برامج‬ ً‫ف‬ ‫نحتاج‬ ‫األحٌان‬ ‫من‬ ‫كثٌر‬ ً‫ف‬
‫ألعمار‬ ً‫الحساب‬ ‫الوسط‬ ‫إٌجاد‬ ً‫ف‬ ‫نرغب‬ ‫لد‬ ً‫ال‬‫فمث‬ ،‫معٌنة‬ ‫ظاهرة‬ ‫معطٌات‬ ‫تمثل‬ ً‫الت‬ ‫األعداد‬
‫ًا‬ٌ‫عمل‬ ‫لٌس‬ ‫ا‬ً‫ع‬‫وطب‬ ،‫الطالب‬ ‫أعمار‬ ‫مجموع‬ ‫نحسب‬ ‫أن‬ ‫ٌجب‬ ً‫ال‬‫أو‬ ‫هذا‬ ‫ولتحمٌك‬ ،‫الجامعة‬ ‫طالب‬
‫أبجدي‬ ‫رمز‬ ‫إعطاء‬
‫هذه‬ ‫مثل‬ ً‫ف‬ ،‫رمز‬ ‫اﻵالف‬ ‫عشرة‬ ‫من‬ ‫ألكثر‬ ‫تحتاج‬ ‫فمد‬ ‫طالب‬ ‫عمر‬ ‫لكل‬
‫التجمٌع‬ ‫خوارزمٌة‬ ‫تسمى‬ ‫للتجمٌع‬ ‫معٌنة‬ ‫خوارزمٌة‬ ‫نصمم‬ ‫الحاالت‬
summers
Algorithm
‫من‬ ‫كمٌة‬ ‫أي‬ ‫ٌجمع‬ ‫أن‬ ‫استطاع‬ ‫الحاسب‬ ‫اتبعها‬ ‫إذا‬ ‫محددة‬ ‫خطوات‬ ‫تتضمن‬
‫ن‬ ‫الذي‬ ‫المتغٌر‬ ‫هو‬ ‫إحداهما‬ ‫اثنٌن‬ ‫متغٌرٌن‬ ‫باستخدام‬ ‫البٌانات‬
ً‫اإلجمال‬ ‫الجمع‬ ‫هو‬ ‫واﻵخر‬ ‫جمعه‬
‫خطوات‬ ‫أربع‬ ً‫ف‬ ‫ذلن‬ ‫لتحمٌك‬ ‫الحاسب‬ ‫ٌتبعها‬ ‫أن‬ ‫ٌجب‬ ً‫الت‬ ‫الخطوات‬ ‫تحدٌد‬ ‫وٌمكن‬ ،)‫(المجمع‬
:ً‫ه‬
ٔ
.‫الصفر‬ ‫ًا‬ٌ‫مساو‬ ‫المجمع‬ ‫اجعل‬ .
ٕ
.‫للمتغٌر‬ ‫واحدة‬ ‫لٌمة‬ ‫ادخل‬ .
ٖ
،‫للمتغٌر‬ ‫المدخلة‬ ‫المٌمة‬ ‫زابد‬ ‫له‬ ‫المدٌمة‬ ‫المٌمة‬ ‫تساوي‬ ‫للمجمع‬ ‫الجدٌدة‬ ‫المٌمة‬ ‫اجعل‬ .
:‫أن‬ ‫أي‬
.‫للمتغٌر‬ ‫مدخلة‬ ‫لٌمة‬ ‫آخر‬ + ‫المدٌمة‬ ‫المجمع‬ ‫الجدٌدة=لٌمة‬ ‫المجمع‬ ‫لٌمة‬
ٗ
.‫الثانٌة‬ ‫الخطوة‬ ‫من‬ ‫ا‬ً‫ء‬‫ابتدا‬ ‫كرر‬ .
.‫شعبتن‬ ‫طالب‬ ‫ألعمار‬ ً‫الحساب‬ ‫الوسط‬ ‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬:‫مثال‬
= ‫الطالب‬ ‫عدد‬ ً‫إجمال‬ ‫أن‬ ‫نفترض‬ :‫الحل‬
N
‫بالرمز‬ ‫له‬ ‫ونرمز‬ ‫طالب‬ ‫كل‬ ‫لرلم‬ ‫ًا‬‫د‬‫عد‬ ‫ونستخدم‬
I
‫ب‬ ‫الطالب‬ ‫لعمر‬ ‫ونرمز‬
X
‫بالرمز‬ ‫له‬ ‫ونرمز‬ ‫الطلبة‬ ‫ألعمار‬ ‫ا‬ً‫ع‬‫مجم‬ ‫ونستخدم‬
S
‫الرمز‬ ‫ونستخدم‬
A
.‫الطلبة‬ ‫أعمار‬ ‫معدل‬ ‫على‬ ‫لٌدل‬
‫الشكل‬ ً‫ف‬ ‫مبٌن‬ ‫هو‬ ‫كما‬ ‫الحل‬ ‫خطوات‬ ‫وتكون‬
ٕٔ
-
ٕٔ
:ً‫ه‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
34
0202
‫م‬
–
5221
‫هـ‬
ٔ
.
.‫ابدأ‬
ٕ
.
‫الطالب‬ ‫عدد‬ ً‫إجمال‬ ‫ادخل‬
(N)
.
ٖ
.
‫اجعل‬
I=0
.
ٗ
.
‫اجعل‬
S=0
.
٘
.
‫اجعل‬
I=I+1
.
ٙ
.
‫ادخل‬
X
.
7
.
‫اجعل‬
S=S+X
.
4
.
‫كانت‬ ‫إذا‬
I=N
‫الخطوة‬ ‫إلى‬ ‫اذهب‬
9
‫الخطوة‬ ‫إلى‬ ‫اذهب‬ ‫وإال‬
٘
.
9
.
‫اجعل‬
A=S/N
.
ٔٓ
.
.‫تولف‬
‫الشكل‬
ٕٔ
-
ٕٔ
ٕٔ
-
9
:‫المتدخلة‬ ‫الدورانات‬ ‫خرابط‬
‫الدورانات‬ ‫تكون‬ ‫الحالة‬ ‫هذه‬ ً‫ف‬
ً‫ال‬‫مث‬ ‫لدٌنا‬ ‫كان‬ ‫فإذا‬ ‫تتماطع‬ ‫ال‬ ‫بحٌث‬ ‫البعض‬ ‫بعضها‬ ‫داخل‬
‫شكل‬ ‫(انظر‬ ‫النوع‬ ‫هذا‬ ‫من‬ ‫دورانان‬
ٕٔ
-
ٖٔ
( ‫لم‬ ‫الدوران‬ ‫فٌسمى‬
ٔ
‫ًا‬ٌ‫داخل‬ ‫ا‬ً‫ن‬‫دورا‬ )
(Inner
Loop)
( ‫رلم‬ ‫الدوران‬ ‫بٌنما‬
ٕ
‫ًا‬ٌ‫خارج‬ ‫ا‬ً‫ن‬‫دورا‬ )
(Outer Loop
‫مثل‬ ً‫عمل‬ ً‫ف‬ ‫التناسك‬ ‫وٌتم‬
:‫بحٌث‬ ‫الدورانٌن‬ ‫هذٌن‬
‫التنفٌذ‬ ‫أولوٌة‬ ‫تكون‬
.ً‫الداخل‬ ‫للدوران‬
‫الشكل‬
ٕٔ
-
ٖٔ
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
35
0202
‫م‬
–
5221
‫هـ‬
‫عن‬ ‫ٌزٌد‬ ‫منها‬ ‫كل‬ ‫طول‬ ‫الخشبٌة‬ ‫المطع‬ ‫من‬ ‫مجموعة‬ ‫تمطٌع‬ ً‫ف‬ ‫نجار‬ ‫ٌرغب‬ :‫مثال‬
ٖ
‫إلى‬ ‫متر‬
‫ٌساوي‬ ‫منها‬ ‫الواحدة‬ ‫طول‬ ‫صغٌرة‬ ‫لطع‬
ٖ
.‫متر‬
.‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬
‫شكل‬ ً‫ف‬ ‫المبٌنة‬ ‫الحل‬ ‫خطوات‬
ٕٔ
-
ٔٗ
:ً‫ه‬
ٔ
.
.‫ابدأ‬
ٕ
.
.‫لطعة‬ ‫خذ‬
ٖ
.
‫طولها‬ ‫لطعة‬ ‫منها‬ ‫الطع‬
ٖ
.‫متر‬
ٗ
.
‫عن‬ ‫ٌزٌد‬ ً‫المتبم‬ ‫هل‬
ٖ
‫متر؟‬
(‫الخطوة‬ ‫إلى‬ ‫فاذهب‬ ‫نعم‬ ‫الجواب‬ ‫كان‬ ‫إذا‬
ٖ
‫كان‬ ‫وإذا‬ .)
( ‫الخطوة‬ ‫إلى‬ ‫فاذهب‬ ‫ال‬ ‫الجواب‬
٘
.)
٘
.
‫كان‬ ‫إن‬ ‫؟‬ ‫تمطٌعها‬ ‫المراد‬ ‫المطع‬ ‫من‬ ‫مزٌد‬ ‫هنان‬ ‫هل‬
(‫الخطوة‬ ‫إلى‬ ‫فاذهب‬ ‫نعم‬ ‫الجواب‬
ٕ
‫فاذهب‬ ‫ال‬ ‫كان‬ ‫وإن‬ )
(‫الخطوة‬ ‫إلى‬
ٙ
.)
ٙ
.
.‫تولف‬
‫الشكل‬ ‫من‬ ‫ٌالحظ‬ :‫ملحوظة‬
ٕٔ
-
ٔٗ
‫أن‬
ً‫الداخل‬ ‫الدوران‬
‫منها‬ ‫كل‬ ‫طول‬ ‫متعددة‬ ‫لطع‬ ‫إلى‬ ‫الواحدة‬ ‫المطعة‬ ‫تمطٌع‬ ‫ٌتضمن‬
ٖ
‫جدٌدة‬ ‫واحدة‬ ‫لطعة‬ ‫تناول‬ ً‫الخارج‬ ‫الدوران‬ ‫ٌمثل‬ ‫بٌنما‬ ‫متر‬
.ً‫الداخل‬ ‫الدوران‬ ‫إجراءات‬ ‫علٌها‬ ‫لتنفذ‬
‫الشكل‬
ٕٔ
-
ٔٗ
ٕٔ
-
ٔٓ
:ً‫االصطالح‬ ‫الشكل‬ ‫باستعمال‬ ‫الدوران‬ ‫صٌغة‬
‫اﻵن‬ ‫وٌمكننا‬ ‫الضمنٌة‬ ‫والدورانات‬ ‫البسٌط‬ ‫الدوران‬ ‫مفهوم‬ ‫السابمتٌن‬ ‫الفمرتٌن‬ ً‫ف‬ ‫عرفنا‬ ‫لمد‬
:ً‫التال‬ ‫النحو‬ ‫على‬ ‫والوارد‬ ‫للدوران‬ ً‫االصطالح‬ ‫الشكل‬ ‫استخدم‬
‫الشكل‬
ٕٔ
-
ٔ٘
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
36
0202
‫م‬
–
5221
‫هـ‬
‫الشكل‬ ً‫ف‬ ‫نالحظ‬
ٕٔ
-
ٔ٘
:‫اﻵتٌة‬ ‫العناصر‬ ‫إلى‬ ‫نحتاج‬ ‫أننا‬
•
‫للعداد‬ ‫األولٌة‬ ‫المٌمة‬
I
‫(هنا‬
(I=1
.
•
‫للعداد‬ ‫النهابٌة‬ ‫المٌمة‬
I
‫(هنا‬
I=1
.)
•
‫للعداد‬ ‫النهابٌة‬ ‫المٌمة‬
I
‫(هنا‬
n
.)
•
‫دورة‬ ‫كل‬ ‫نهاٌة‬ ‫عند‬ ‫الزٌادة‬ ‫لٌمة‬
.
‫الشكل‬ ً‫ف‬ ‫نالحظ‬
ٕٔ
-
ٔ٘
‫من‬ ‫والمفصلة‬ ‫اﻵتٌة‬ ‫للخطوات‬ ً‫ا‬‫طبم‬ ‫تتم‬ ‫كانت‬ ‫الدوران‬ ‫إجراءات‬ ‫إن‬
:‫المبرمج‬ ‫لبل‬
ٔ
‫أعط‬ .
I
.‫أولٌة‬ ‫لٌمة‬
ٕ
.‫إعادتها‬ ‫المطلوب‬ ‫اإلجراءات‬ ‫أتم‬ .
ٖ
‫العداد‬ ‫لٌمة‬ ‫كانت‬ ‫إذا‬ )‫(تمرٌر‬ .
1
‫النهابٌة‬ ‫المٌمة‬ ‫إلى‬ ‫وصلت‬
n
ً‫ف‬ ‫التالٌة‬ ‫الخطوة‬ ‫إلى‬ ‫اخرج‬
( ‫الخطوة‬ ‫إلى‬ ‫فاذهب‬ ‫وإال‬ ‫البرنامج‬
ٗ
.)
ٗ
‫زد‬ .
I
‫الزٌادة‬ ‫بممدار‬
.
٘
( ‫الخطوة‬ ‫إلى‬ ‫عد‬ .
ٕ
.)
‫المفصلة‬ ‫الخطوات‬ ‫استبدال‬ ‫ٌمكننا‬
‫الشكل‬ ً‫ف‬
ٕٔ
-
ٔ٘
‫بخط‬
ً‫ف‬ ‫مبٌنة‬ ‫واحدة‬ ‫مجملة‬ ‫وة‬
‫شكل‬ ‫للدوران‬ ً‫االصطالح‬ ‫الشكل‬
ٕٔ
-
ٔ٘
‫لبل‬ ‫من‬ ‫أوتوماتٌكٌة‬ ‫بصورة‬ ‫الخطوات‬ ‫هذه‬ ‫تنفذ‬ ‫حٌث‬
‫وتجنب‬ ‫البرنامج‬ ً‫ف‬ ‫التعلٌمات‬ ‫عدد‬ ‫واختصار‬ ‫البرمجة‬ ‫عملٌة‬ ‫تسهٌل‬ ‫شأنه‬ ‫من‬ ‫وهذا‬ ،‫الحاسب‬
.‫األخطاء‬ ‫بعض‬
‫لٌمة‬ ‫تعتبر‬ :‫ملحوظة‬
‫تساوي‬
ٔ
‫بخال‬ ‫أخرى‬ ‫لٌمة‬ ‫تعط‬ ‫لم‬ ‫إذا‬ ‫ا‬ً‫م‬‫داب‬
‫ذكر‬ ‫عدم‬ ‫حالة‬ ً‫وف‬ ،‫ذلن‬ ‫ف‬
‫لٌمة‬
‫الشكل‬ ً‫ف‬ ‫الوارد‬ ً‫االصطالح‬ ‫الشكل‬ ‫ٌصبح‬
ٕٔ
-
ٔ٘
‫لٌمة‬ ‫تكون‬ ‫حٌث‬ ً‫ٌل‬ ‫كما‬
‫تساوي‬
ٔ
.‫أوتوماتٌكٌة‬ ‫وبصورة‬
‫الشكل‬
ٕٔ
-
ٔٙ
‫الشكل‬ ً‫ف‬ ‫الموضح‬ ‫مثال‬ ‫حل‬ ‫أعد‬ :‫مثال‬
ٕٔ
-
ٔٔ
‫مساحة‬ ‫إلٌجاد‬
n
‫الشكل‬ ‫باستخدام‬ ‫الدوابر‬ ‫من‬
.‫للدوران‬ ً‫االصطالح‬
ً‫ه‬ ‫كما‬ ‫الحل‬ ‫خطوات‬
‫الشكل‬ ً‫ف‬ ‫مبٌنة‬
ٕٔ
-
ٔ7
.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
37
0202
‫م‬
–
5221
‫هـ‬
‫الشكل‬
12-17
‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬
N!
.
:‫الحل‬
N!=N (N-1) (N-2) …3*2*1
.
‫الشكل‬ ً‫ف‬ ‫مبٌنة‬ ً‫ه‬ ً‫ٌل‬ ‫كما‬ ‫الحل‬ ‫فخطوات‬
ٕٔ
-
ٔ4
:
‫الشكل‬
12-18
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
38
0202
‫م‬
–
5221
‫هـ‬
‫اإلنترنت‬ ‫عالم‬ ً‫ف‬ ‫تتحكم‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫عن‬ ‫أسرار‬ ‫سبعة‬
:
-
‫فراي‬ ‫هانا‬ ‫الكاتبة‬ ‫العام‬ ‫هذا‬ ‫السنوٌة‬ ‫المٌالد‬ ‫أعٌاد‬ ‫محاضرة‬ ً‫ف‬ ً‫البرٌطان‬ ً‫الملك‬ ‫المعهد‬ ‫ّف‬ٌ‫ُض‬ٌ
‫فٌه‬ ‫اختٌاراتنا‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫ودور‬ ‫خضمه‬ ً‫ف‬ ‫نعٌش‬ ‫الذي‬ ‫المعلومات‬ ‫عالم‬ ‫عن‬ ‫لتتحدث‬
.‫حٌاتنا‬ ً‫ف‬ ‫تأثٌرها‬ ‫ومدى‬
،‫أبٌت‬ ‫أم‬ ‫شبت‬ ‫لكنها‬ ،‫وجدتها‬ ‫أٌنما‬ ‫الخٌال‬ ‫تثٌر‬ ً‫الت‬ ‫الكلمات‬ ‫تلن‬ ‫من‬ "‫"خوارزمٌات‬ ‫كلمة‬ ‫تبدو‬ ‫ال‬
.‫المعاصر‬ ‫عالمنا‬ ً‫ف‬ ‫راسخة‬ ‫وباتت‬ ‫لتبمى‬ ‫ولدت‬ ‫كلمة‬
‫على‬ ‫كثٌرا‬ ‫ُستخدم‬ٌ .‫المتنالضات‬ ‫من‬ ‫غرٌبة‬ ‫حزمة‬ ‫ٌمثل‬ ‫الخوارزمٌات‬ ‫إن‬ ‫سألول‬ ،ً‫سألتن‬ ‫وإذا‬
‫مرة‬ ‫كل‬ ً‫ف‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ،‫اإلنترنت‬
.‫النت‬ ‫على‬ ‫شًء‬ ‫عن‬ ‫فٌها‬ ‫تبحث‬
‫االنتشار‬ ‫واسعة‬ ً‫وه‬ .‫نفسه‬ ‫الولت‬ ً‫ف‬ ‫غرٌبة‬ ‫تظل‬ ‫ولكنها‬ ،‫الغالب‬ ً‫ف‬ ‫مألوفة‬ ‫والخوارزمٌات‬
‫ما‬ ‫بشكل‬ ‫تستطٌع‬ ‫أنها‬ ‫مع‬ ،‫مجتمعنا‬ ‫مظاهر‬ ‫كل‬ ً‫ف‬ ،‫افتراضٌا‬ ،‫عمٌما‬ ‫تأثٌرا‬ ‫وتملن‬ .‫مربٌة‬ ‫وغٌر‬
.‫للدهشة‬ ‫مثٌر‬ ‫بشكل‬ ‫التجاهل‬ ‫سهلة‬ ‫تكون‬ ‫أن‬
‫ب‬ ‫لها‬ ‫تجاهل‬ ‫ال‬ ‫ولكن‬
‫الجدٌد‬ ‫العالم‬ ‫هذا‬ ً‫ف‬ ‫اإلبحار‬ ً‫ف‬ ‫ٌساعدن‬ ‫مبسط‬ ‫دلٌل‬ ‫وإلٌن‬ ،‫الٌوم‬ ‫عد‬
..‫المذهل‬
5
-
‫الخوارزميات؟‬ ‫هي‬ ‫ما‬
‫تأخذ‬ .‫الطعام‬ ‫إعداد‬ ‫وصفة‬ ‫مثل‬ ،‫التعلٌمات‬ ‫من‬ ‫سلسلة‬ ‫بوصفها‬ ‫الخوارزمٌات‬ ‫إلى‬ ‫النظر‬ ‫ُمكنن‬ٌ
ٌ‫النها‬ ً‫ف‬ ‫الجدٌدة‬ ‫الحصٌلة‬ ‫من‬ ‫ما‬ ‫نوع‬ ‫على‬ ‫لتحصل‬ ‫معا‬ ‫وتخلطها‬ ‫المكونات‬ ‫من‬ ‫حزمة‬
.‫ة‬
‫مسح‬ ‫أو‬ ،‫االنترنت‬ ‫على‬ ‫بحثن‬ ‫مصطلحات‬ ‫ربما‬ :‫البٌانات‬ ‫من‬ ‫نوعا‬ ‫دابما‬ ‫تكون‬ ‫لد‬ ‫المكونات‬ ‫وهذه‬
.‫النت‬ ‫من‬ ‫حملتها‬ ً‫الت‬ ‫الموسٌمٌة‬ ‫للممطوعات‬ ‫طوٌلة‬ ‫لابمة‬ ‫أو‬ ،‫وجهن‬ ‫لمالمح‬
،‫غوغل‬ ‫البحث‬ ‫محرن‬ ً‫ف‬ ‫لن‬ ‫تظهر‬ ً‫الت‬ ‫األولى‬ ‫كالصفحة‬ :‫جمٌعا‬ ‫ندركها‬ ‫أشٌاء‬ ً‫فه‬ ‫نتابجها‬ ‫أما‬
‫هاتفن‬ ‫فتح‬ ‫أو‬
‫على‬ ‫تشاهدها‬ ‫جدٌدة‬ ‫ممترحات‬ ‫حزمة‬ ‫أو‬ ،‫وجهن‬ ‫مالمح‬ ‫على‬ ‫التعرف‬ ‫عبر‬ ‫النمال‬
.‫للموسٌمى‬ ‫سبوتٌفاي‬ ‫مولع‬
0
-
‫الخوارزميات؟‬ ‫يستخدم‬ ‫من‬
ً‫شخص‬ ‫طابع‬ ‫وإضفاء‬ ‫بحث‬ ‫فٌها‬ ‫ٌجري‬ ً‫الت‬ ،‫اإلنترنت‬ ‫على‬ ‫مكان‬ ‫كل‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫تجد‬
‫اإل‬ ‫على‬ ‫التسوق‬ ‫من‬ ،)‫الشخصٌة‬ ‫االختٌارات‬ ‫(تحدٌد‬ ‫االختٌارات‬ ‫على‬
‫البث‬ ‫خدمات‬ ‫إلى‬ ‫نترنت‬
‫ستخدم‬ُ‫ت‬ ‫الخوارزمٌات‬ ‫أن‬ ‫بٌد‬ .)‫اإلنترنت‬ ‫عبر‬ ‫وغٌرها‬ ‫واألفالم‬ ‫الموسٌمى‬ ‫بث‬ ‫(خدمة‬ ‫المتدفك‬
‫بمصادر‬ ‫االستعانة‬ ً‫ف‬ ‫الناس‬ ‫بدأ‬ ،‫الماضٌة‬ ‫الملٌلة‬ ‫السنوات‬ ً‫ف‬ .‫بكثٌر‬ ‫ذلن‬ ‫من‬ ‫أوسع‬ ‫بشكل‬
.‫اإلنسانٌة‬ ‫المجاالت‬ ‫مختلف‬ ً‫ف‬ ‫المرارات‬ ‫التخاذ‬ ‫األتمتة‬ ‫واستخدام‬ ‫خارجٌة‬
ً‫وف‬ ،‫المناسب‬ ‫الحكم‬ ‫اتخاذ‬ ً‫ف‬ ‫المضاة‬ ‫تساعد‬ ،‫المحاكم‬ ‫لاعات‬ ً‫ف‬ ‫الٌوم‬ ‫الخوارزمٌات‬ ‫فتجد‬
‫المستشفٌات‬ ً‫وف‬ ،‫العبٌهم‬ ‫لتدرٌب‬ ‫أسلوب‬ ‫أفضل‬ ‫الختٌار‬ ‫المدربٌن‬ ‫تساعد‬ ‫المدم‬ ‫كرة‬ ‫نوادي‬
‫الشركات‬ ً‫وف‬ ،‫لمرضاهم‬ ‫سٌمدمونه‬ ‫الذي‬ ‫العالج‬ ‫نوع‬ ‫بشأن‬ ‫لرارات‬ ‫التخاذ‬ ‫األطباء‬ ‫لمساعدة‬
‫ف‬ ‫للمساعدة‬
.ً‫أساس‬ ‫بشكل‬ ‫مكان‬ ‫كل‬ ً‫ف‬ ‫تنتشر‬ ً‫فه‬ .‫العمل‬ ‫سٌمنح‬ ‫ومن‬ ‫الجدد‬ ‫الموظفٌن‬ ‫اختٌار‬ ً
3
-
‫؟‬ ً‫ء‬‫أخطا‬ ‫ترتكب‬ ‫هل‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
39
0202
‫م‬
–
5221
‫هـ‬
‫أنها‬ ً‫ف‬ ‫شن‬ ‫ال‬ ‫لكن‬ ،‫مذهلة‬ ‫التارٌخٌة‬ ‫الجدٌدة‬ ‫األدوات‬ ‫هذه‬ ‫عبر‬ ‫إنجازها‬ ‫ٌمكن‬ ً‫الت‬ ‫الحصٌلة‬ ‫إن‬
.‫الكمال‬ ‫عن‬ ‫بعٌدة‬
‫وصلتهم‬ ‫أشخاص‬ ‫تجارب‬ ً‫ف‬ ،‫شًء‬ ‫كل‬ ‫بعد‬ ،‫واضحا‬ ‫ٌبدو‬ ‫لد‬ ‫وهذا‬
‫ٌطلبوا‬ ‫لم‬ ‫سلع‬ ‫عن‬ ‫توصٌات‬
‫تصل‬ ‫ال‬ ‫الخوارزمٌات‬ ‫أن‬ ‫ٌعرفون‬ ‫فباتوا‬ ،‫مشاهدته‬ ‫ٌطلبوا‬ ‫لم‬ ‫فٌلم‬ ‫عن‬ ‫أو‬ ‫اإلنترنت‬ ‫على‬ ‫شراءها‬
‫تذكر‬ ‫تماما‬ ‫علٌنا‬ ‫الصعب‬ ‫من‬ ،‫بأخرى‬ ‫أو‬ ‫بطرٌمة‬ ‫ولكن‬ .‫الدوام‬ ‫على‬ ‫صحٌح‬ ‫بشكل‬ ‫األشٌاء‬ ‫إلى‬
‫الت‬ ‫لنا‬ ‫تمدمها‬ ً‫الت‬ ‫المشرلة‬ ‫الوعود‬ ‫إلى‬ ‫منجذبون‬ ‫ونحن‬ ‫الحمٌمة‬ ‫هذه‬
.‫الجدٌدة‬ ‫كنولوجٌا‬
‫اإللكترونٌة‬ ‫البطالات‬ ‫مفاتٌح‬ ‫استخدام‬ ‫الغاء‬ ً‫ف‬ ‫ٌنظر‬ ‫الفنادق‬ ‫بعض‬ ‫أن‬ ‫إلى‬ ‫تشٌر‬ ‫تمارٌر‬ ‫ثمة‬
‫إلى‬ ‫بالدخول‬ ‫الفندق‬ ً‫ف‬ ‫للنزالء‬ ‫ٌسمح‬ ‫كمفتاح‬ ‫الوجه‬ ‫على‬ ‫التعرف‬ ‫بتمنٌة‬ ‫عنها‬ ‫واالستعاضة‬
.‫غرفهم‬
‫لنحو‬ ‫الطرٌمة‬ ‫هذه‬ ‫استخدمت‬ ‫لو‬ ‫وحتى‬
9ٓ
‫نح‬ ‫سٌظل‬ ،‫الولت‬ ‫من‬ ‫المبة‬ ً‫ف‬
ً‫ف‬ ‫زبابن‬ ‫عشرة‬ ‫و‬
‫ال‬ ‫عندما‬ ‫للمساعدة‬ ‫طلبا‬ ‫الممرات‬ ً‫وف‬ ‫الساللم‬ ‫على‬ ‫وٌنزلون‬ ‫ٌصعدون‬ ‫الغرف‬ ‫مبات‬ ‫ٌضم‬ ‫فندق‬
‫بالتأكٌد‬ ‫األفضل‬ ‫الخٌار‬ ‫هذا‬ ‫ولٌس‬ .‫وجوههم‬ ‫على‬ ‫التعرف‬ ‫تمنٌة‬ ‫على‬ ‫اعتمادا‬ ‫غرفهم‬ ‫أبواب‬ ‫تفتح‬
.‫فندق‬ ً‫ف‬ ‫مسترخٌة‬ ‫أللامة‬
،‫خطٌرة‬ ‫عوالب‬ ‫عن‬ ‫تسفر‬ ‫لد‬ ‫األخطاء‬ ‫هذه‬ ‫مثل‬ ‫أن‬ ‫بٌد‬
‫استخدمت‬ ‫إذا‬ ‫المثال‬ ‫سبٌل‬ ‫على‬
،‫وتوزٌعها‬ ‫معٌنة‬ ‫فوابد‬ ‫لتخصٌص‬ ‫أو‬ ،‫ما‬ ‫عمل‬ ‫إلى‬ ‫لمتمدمٌن‬ ‫المهنٌة‬ ‫السٌر‬ ‫لتصفٌة‬ ‫الخوارزمٌات‬
‫حٌاة‬ ‫على‬ ‫كبٌرا‬ ‫تأثٌرا‬ ‫تترن‬ ‫أن‬ ‫تجنبها‬ ‫ٌمكن‬ ‫ال‬ ً‫الت‬ ‫لألخطاء‬ ‫ٌمكن‬ ‫إذ‬ ،‫المعلمٌن‬ ‫أداء‬ ‫لتمٌٌم‬ ‫أو‬
‫المبالغ‬ ‫الثمة‬ ‫على‬ ‫معتادٌن‬ ‫نكون‬ ‫عندما‬ ‫سٌما‬ ‫ال‬ .‫الناس‬
.‫والتمنٌة‬ ‫الكومبٌوتر‬ ‫بمرارات‬ ‫بها‬ ‫ة‬
2
-
‫إلغاءها‬ ‫الصعب‬ ‫من‬ ‫أن‬ ‫نجد‬
‫نهاٌة‬ ‫االنتباه‬ ‫ٌستحك‬
‫األلمار‬ ‫عبر‬ ‫المولع‬ ‫تحدٌد‬ ‫أو‬ ‫المالحة‬ ‫برامج‬ ‫تعلٌمات‬ ‫تتبعوا‬ ‫أناس‬ ‫عن‬ ‫لصصا‬ ‫جمٌعا‬ ‫سمعنا‬
‫جرف‬ ‫حافة‬ ‫عند‬ ‫أو‬ ‫النهاٌة‬ ‫مغلك‬ ‫طرٌك‬ ً‫ف‬ ‫أما‬ ‫حابرٌن‬ ‫الولوف‬ ‫إلى‬ ‫وانتهوا‬ ‫االصطناعٌة‬
‫على‬ ‫صخري‬
.‫البحر‬
ً‫ف‬ ،‫أنفسنا‬ ‫مع‬ ‫أمٌنٌن‬ ‫نكون‬ ‫أن‬ ‫هنا‬ ‫المهم‬ ‫من‬ ‫ولكن‬ ‫األخطاء‬ ‫هذه‬ ‫مثل‬ ‫على‬ ‫بسهولة‬ ‫نضحن‬ ‫لد‬
.‫التكنولوجٌا‬ ‫استخدام‬ ‫على‬ ‫اعتمادنا‬ ‫تجنب‬ ‫الصعب‬ ‫من‬ ‫أنه‬ ‫االعتماد‬
‫تنتج‬ ‫أن‬ ‫ٌمكن‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫استخدام‬ ً‫ف‬ ‫تبدأ‬ ‫عندما‬ ‫حما‬ ‫خطٌرة‬ ‫مشكلة‬ ‫تشكل‬ ‫أن‬ ‫ٌمكن‬ ‫وتلن‬
ٌ‫ف‬ ‫تكون‬ ‫خاطبة‬ ‫حاالت‬
.‫المحن‬ ‫على‬ ‫أناس‬ ‫حٌوات‬ ‫ها‬
‫خاص‬ ‫بشكل‬ ‫للجدل‬ ‫المثٌرة‬ ‫االستخدامات‬ ‫من‬ ‫واحدا‬ ،‫الحصر‬ ‫ال‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ‫خذ‬
‫باحتماالت‬ ‫الخوارزمٌات‬ ‫وتتنبأ‬ ،‫جرٌمة‬ ‫بارتكاب‬ ‫المحكمة‬ ً‫ف‬ ‫شخص‬ ‫ُتهم‬ٌ ‫عندما‬ ،‫للخوارزمٌات‬
‫المحاكم‬ ً‫ف‬ ‫المضاة‬ ‫ٌستخدمه‬ ‫التولع‬ ً‫ف‬ ‫األسلوب‬ ‫هذا‬ ‫ومثل‬ .‫أخرى‬ ‫مرة‬ ‫الجرٌمة‬ ‫الرتكاب‬ ‫عودته‬
‫الت‬ ‫العالم‬ ‫حول‬
‫التخاذ‬ ‫الحاالت‬ ‫بعض‬ ً‫وف‬ ،‫ال‬ ‫أو‬ ‫بكفالة‬ ‫علٌه‬ ‫المدعى‬ ‫عن‬ ‫اإلفراج‬ ‫بشأن‬ ‫لرار‬ ‫خاذ‬
.‫المتهم‬ ‫حكم‬ ‫مدة‬ ‫بشأن‬ ‫لرار‬
‫سٌحدث‬ ‫بما‬ ‫التنبؤ‬ ‫حسن‬ُ‫ت‬ ‫لم‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫أن‬ ‫األكادٌمٌٌن‬ ‫بعض‬ ‫أظهر‬ ،ً‫الماض‬ ‫العام‬ ً‫ف‬
‫المعلوم‬ ‫بالناس‬ ‫ممتلبة‬ ‫لاعة‬ ‫إعطاء‬ ‫من‬ ‫أفضل‬ ‫بطرٌمة‬ ،‫المستمبل‬ ً‫ف‬ ‫علٌه‬ ‫للمدعى‬
‫ذاتها‬ ‫ات‬
.‫ال‬ ‫أم‬ ‫أخرى‬ ‫جرٌمة‬ ‫سٌرتكب‬ ‫علٌه‬ ‫المدعى‬ ‫أن‬ ‫هل‬ ‫تخمٌن‬ ‫منهم‬ ‫والطلب‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
41
0202
‫م‬
–
5221
‫هـ‬
‫لكن‬ ،‫المحكمة‬ ‫لاعة‬ ً‫ف‬ ‫للخوارزمٌات‬ ‫مكان‬ ‫ثمة‬ ‫أنه‬ ‫إلى‬ ‫سنشٌر‬ ،‫المٌالد‬ ‫أعٌاد‬ ‫محاضرة‬ ً‫وف‬
،ً‫للماض‬ ‫بالنسبة‬ ‫تجاهله‬ ‫األصعب‬ ‫ما‬ :ً‫ف‬ ‫تتمثل‬ ‫هنا‬ ‫المشكلة‬ ‫ألن‬ ،‫وحذر‬ ‫بعناٌة‬ ‫استخدامها‬ ‫ٌجب‬
‫جها‬ ‫من‬ ‫تولع‬ ‫هو‬ ‫هل‬
‫الناس‬ ‫من‬ ‫مجموعة‬ ‫من‬ ‫تخمٌن‬ ‫مجرد‬ ‫أم‬ ،ً‫االصطناع‬ ‫الذكاء‬ ‫ٌعتمد‬ ‫غال‬ ‫ز‬
.‫تماما‬ ‫الغرباء‬
1
-
‫شخص‬ ‫لكل‬ ‫نفسه‬ ‫الخطأ‬ ‫ترتكب‬ ‫ال‬
.‫منحازة‬ ‫تكون‬ ‫لن‬ ‫أنها‬ ً‫ٌعن‬ ‫ال‬ ‫األمر‬ ‫هذا‬ ‫لكن‬ ،‫الرٌاضٌات‬ ‫على‬ ‫الخوارزمٌات‬ ‫تعتمد‬ ‫لد‬
‫إلى‬ ‫أولٌة‬ ‫توظٌف‬ ‫عملٌات‬ ً‫ف‬ ‫استخدمت‬ ‫خوارزمٌات‬ ‫أشارت‬ ،‫المثال‬ ‫سبٌل‬ ‫على‬
‫المرجح‬ ‫من‬ ‫أن‬
‫إلى‬ ‫العمل‬ ‫من‬ ‫وصولهم‬ ‫رحالت‬ ً‫ف‬ ‫ٌستغرلونه‬ ‫الذي‬ ‫الزمن‬ ‫كان‬ ‫إذا‬ ‫الشركة‬ ‫داخل‬ ً‫ف‬ ‫الناس‬ ‫بماء‬
‫مسافة‬ ‫بعد‬ ‫على‬ ‫ٌسكنون‬ ‫الذٌن‬ ‫االشخاص‬ ‫كل‬ ‫بعد‬ُ‫أ‬ ‫االستنتاج‬ ‫هذا‬ ‫على‬ ‫وبناء‬ ،‫لصٌرا‬ ‫البٌت‬
.‫الشركة‬ ‫مكاتب‬ ‫من‬ ‫ساعة‬ ‫من‬ ‫أكثر‬ ‫الٌها‬ ‫الطرٌك‬ ‫ٌستغرق‬
‫عادال‬ ‫المرار‬ ‫هذا‬ ‫مثل‬ ‫وٌبدو‬
‫السكن‬ ‫ٌستطٌعون‬ ‫من‬ ‫أن‬ ‫كانت‬ ‫نتٌجته‬ ‫ولكن‬ ،‫الخارج‬ ‫من‬ ‫وممبوال‬
‫أبعد‬ ‫الخوارزمٌات‬ ‫أن‬ ‫أي‬ ،‫فمط‬ ‫األغنٌاء‬ ‫من‬ ‫كانوا‬ ‫الشركة‬ ‫مولع‬ ‫من‬ ‫لرٌبا‬ ‫المدٌنة‬ ‫مركز‬ ً‫ف‬
.‫التوظٌف‬ ‫طلبات‬ ‫تمدٌمهم‬ ‫عند‬ ‫أدنى‬ ‫والتصادٌة‬ ‫اجتماعٌة‬ ‫خلفٌات‬ ‫جاءوا‬ ‫من‬ ‫كل‬ ‫مبرر‬ ‫غٌر‬ ‫بشكل‬
‫المم‬ ‫غٌر‬ ‫االنحٌاز‬ ‫من‬ ‫النوع‬ ‫هذا‬
‫بنٌت‬ ‫إذا‬ ،‫المثال‬ ‫سبٌل‬ ‫على‬ ،‫مكان‬ ‫كل‬ ً‫ف‬ ‫تراه‬ ‫صود‬
ً‫ف‬ ‫أجرٌت‬ ‫سوح‬ُ‫م‬ ‫بٌانات‬ ‫على‬ ‫بناء‬ ،‫الصدر‬ ‫أنسجة‬ ً‫ف‬ ‫السرطانٌة‬ ‫الخالٌا‬ ‫لتحدٌد‬ ‫ا‬ ‫خوارزمٌات‬
‫لتشخٌص‬ ‫موفمة‬ ‫غٌر‬ ‫بنتٌجة‬ ً‫ستنته‬ ،‫لولازٌة‬ ‫أثنٌة‬ ‫أصول‬ ‫من‬ ‫مرضاها‬ ‫غالبٌة‬ ‫مستشفٌات‬
.‫أخرى‬ ‫أثنٌة‬ ‫خلفٌات‬ ‫من‬ ‫نساء‬ ً‫ف‬ ‫السرطان‬
‫الح‬ ‫وكذلن‬
‫مجموعات‬ ‫على‬ ‫واختبرت‬ ‫ممت‬ُ‫ص‬ ً‫الت‬ ،‫الوجه‬ ‫مالمح‬ ‫على‬ ‫التعرف‬ ‫تمنٌة‬ ‫مع‬ ،‫ال‬
‫وجوه‬ ‫مالمح‬ ‫تمٌٌز‬ ً‫ف‬ ‫كبٌر‬ ‫بشكل‬ ‫فاعلة‬ ‫غٌر‬ ‫تصبح‬ ً‫الت‬ ،‫التنوع‬ ‫إلى‬ ‫تفتمد‬ ‫متجانسة‬ ‫بشرٌة‬
.‫دكنة‬ ‫أكثر‬ ‫لون‬ ‫درجة‬ ‫ذات‬ ‫بشرة‬ ‫ذوي‬ ‫من‬ ‫أشخاص‬
‫ع‬ ‫لدرتن‬ ‫عدم‬ ‫عن‬ ‫الناجم‬ ‫باالزعاج‬ ‫ذلن‬ ‫ٌتعلك‬ ‫ال‬ :‫خطٌرة‬ ‫ذلن‬ ‫عوالب‬ ‫إن‬
‫المغلك‬ ‫هاتفن‬ ‫فتح‬ ‫لى‬
‫المحتمل‬ ‫من‬ ‫(أو‬ ‫تمٌٌز‬ ‫على‬ ‫لادرة‬ ‫غٌر‬ )‫سابك‬ ‫دون‬ ‫(من‬ ‫المٌادة‬ ‫ذاتٌة‬ ‫سٌارات‬ ‫كانت‬ ‫إذا‬ ‫أو‬ ،‫فمط‬
‫المطارات‬ ً‫ف‬ ‫الدخول‬ ‫بوابات‬ ً‫ف‬ ‫الوجه‬ ‫على‬ ‫التعرف‬ ‫أجهزة‬ ‫كانت‬ ‫أو‬ ،‫معٌنٌن‬ ‫مشاة‬ )‫تتجنب‬
‫أتم‬ ‫أنظمة‬ ‫ستولد‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫بأن‬ ‫بل‬ ،‫الناس‬ ‫من‬ ‫محدد‬ ‫نوع‬ ‫مع‬ ‫فمط‬ ‫تعمل‬
‫مجتمع‬ ً‫ف‬ ‫تة‬
.‫متكافا‬ ‫غٌر‬
‫خالل‬ ‫األمر‬ ‫هذا‬ ‫على‬ ‫تركٌزا‬ ‫أكثر‬ ‫باتوا‬ ‫الخوارزمٌات‬ ‫إعداد‬ ً‫ف‬ ‫العاملٌن‬ ‫أن‬ ‫الحظ‬ ‫حسن‬ ‫ومن‬
.‫تحسٌنها‬ ‫بفاعلٌة‬ ‫وٌحاولون‬ ‫الماضٌتٌن‬ ‫السنتٌن‬
ٙ
-
‫صواب؟‬ ‫على‬ ‫تكون‬ ‫متى‬ ‫الخوارزمٌات‬ ‫تعلم‬ ‫كٌف‬
‫المزٌفة‬ ‫الخوارزمٌات‬ ‫من‬ ‫احترس‬ .‫ألدمه‬ ‫الذي‬ ‫األكبر‬ ‫التحذٌر‬ ‫هنا‬
‫على‬ ‫تبنى‬ ً‫الت‬ ‫تلن‬ ‫(أي‬
.‫زابف‬ ‫علم‬ ‫على‬ ‫معتمدة‬ ‫للملك‬ ‫مثٌرة‬ ‫خوارزمٌات‬ ‫باستخدام‬ ‫توجه‬ ‫ثمة‬ .)‫علمٌة‬ ‫غٌر‬ ‫بٌانات‬
‫تعلم‬ ‫كٌف‬ :‫البسٌط‬ ‫السؤال‬ ‫هذا‬ ‫نفسن‬ ‫بسؤال‬ ‫إبدأ‬ ،‫تشخٌصها‬ ‫من‬ ‫تمكنن‬ ‫طرق‬ ‫ثمة‬ ،‫الحظ‬ ‫ولحسن‬
‫صواب؟‬ ‫على‬ ‫تكون‬ ‫متى‬ ‫االخوارزمٌات‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
40
0202
‫م‬
–
5221
‫هـ‬
،‫الصورة‬ ‫صدر‬
Getty Images
‫على‬ ‫التعلٌك‬
‫الوجه‬ ‫على‬ ‫التعرف‬ ‫تمنٌة‬ ‫على‬ ‫العالم‬ ‫حول‬ ‫الشرطة‬ ‫لوات‬ ‫اعتماد‬ ‫ٌتزاٌد‬ ،‫الصورة‬
‫مالمح‬ ‫تمٌٌز‬ ‫عملٌة‬ ً‫ف‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ،‫مناسبة‬ ‫خوارزمٌات‬ ‫علٌه‬ ‫تجٌب‬ ‫أن‬ ‫ٌسهل‬ ‫سؤال‬ ‫وهذا‬
‫وهكذا‬ .‫تكون‬ ‫ال‬ ‫أو‬ ‫الخوارزمٌات‬ ‫عنه‬ ‫تبحث‬ ‫الذي‬ ‫الشخص‬ ‫تكون‬ ‫أن‬ ‫إما‬ ‫احتماالن‬ ‫ثمة‬ :‫الوجه‬
‫ٌع‬ ‫الخوارزمٌات‬ ‫فإن‬
.‫وجهن‬ ‫مالمح‬ ‫تحدٌد‬ ً‫ف‬ ‫صواب‬ ‫على‬ ‫ٌكون‬ ‫متى‬ ‫رف‬
‫ما‬ ‫شخص‬ ‫عواطف‬ ‫تحدٌد‬ ‫على‬ ‫لادرة‬ ‫أنها‬ ‫تزعم‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫بعض‬ ‫ثمة‬ ،‫العكس‬ ‫وعلى‬
‫وتثستخدم‬ .‫فٌدٌو‬ ‫مماطع‬ ً‫ف‬ ‫صوره‬ ‫من‬ ‫وشخصٌته‬
‫مناسبا‬ ‫ما‬ ‫شخصا‬ ‫أن‬ ‫هل‬ ‫لتمٌٌم‬ ‫الممابالت‬ ً‫ف‬
‫لد‬ ‫أنها‬ ‫تعرف‬ ‫أن‬ ‫للخوارزمٌات‬ ‫ٌمكن‬ ‫كٌف‬ : ‫نفسه‬ ‫ٌطرح‬ ‫سؤال‬ ‫وهنا‬ .‫الشركة‬ ً‫ف‬ ‫للعمل‬
‫صحٌح؟‬ ‫بشكل‬ ‫الشخص‬ ‫عواطف‬ ‫استخلصت‬
‫على‬ ‫عمل‬ ‫ممابلة‬ ‫مثل‬ ‫مناسبة‬ ً‫وف‬ ،‫الشخصٌة‬ ‫عواطفن‬ ‫وصف‬ ‫حتى‬ ‫تستطٌع‬ ‫هل‬ ،‫صادلٌن‬ ‫لنكن‬
ٌ‫مز‬ ‫فٌها‬ ‫تعٌش‬ ‫وأنت‬ ‫الخصوص‬ ‫وجه‬
‫من‬ ‫واثك‬ ‫أنن‬ ً‫توح‬ ‫أن‬ ‫تحاول‬ ‫بٌنما‬ ‫والملك‬ ‫اإلثارة‬ ‫من‬ ‫جا‬
.‫نفسن‬
7
-
‫الخوارزمٌات؟‬ ‫هذه‬ ‫تستخدم‬ ‫من‬ ‫لمصلحة‬ ‫نفسن‬ ‫إسأل‬
‫عام‬ ً‫ف‬ ‫جري‬ُ‫أ‬ ‫شهٌر‬ ‫استبٌان‬ ً‫ف‬
ٕٓٔٙ
‫ٌمكن‬ ‫ال‬ ‫اصطدام‬ ‫حادث‬ ‫ولوع‬ ‫حالة‬ ً‫ف‬ ‫أنه‬ ‫أناس‬ ‫بل‬ُ‫س‬ ،
‫النماذه‬ ‫ستختار‬ ‫من‬ ،‫سابك‬ ‫بدون‬ ‫سٌارة‬ ً‫ف‬ ‫تجنبه‬
‫األبرٌاء؟‬ ‫المارة‬ ‫أم‬ ‫السٌارة‬ ‫ركاب‬
‫نحو‬ ،‫االستبٌان‬ ً‫ف‬ ‫المشاركٌن‬ ‫من‬ ‫كبٌرة‬ ‫نسبة‬
7ٙ
‫تموم‬ ‫أن‬ ً‫األخالل‬ ‫من‬ ‫أن‬ ‫شعرت‬ ،‫المبة‬ ً‫ف‬
‫الذٌن‬ ‫بالركاب‬ ‫التضحٌة‬ ً‫ٌعن‬ ‫وهذا‬ ،‫األشخاص‬ ‫من‬ ‫لدر‬ ‫أكبر‬ ‫بإنماذ‬ ‫سابمٌن‬ ‫دون‬ ‫من‬ ‫السٌارات‬
.‫السٌارة‬ ‫داخل‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
42
0202
‫م‬
–
5221
‫هـ‬
‫ه‬ ‫عن‬ ‫المشاركٌن‬ ‫نفسها‬ ‫الدراسة‬ ‫سألت‬ ‫وعندما‬
ً‫ف‬ ‫تتسبب‬ ‫أن‬ ‫ُمكن‬ٌ ‫سٌارة‬ ‫سٌشترون‬ ‫أنهم‬ ‫ل‬
‫العام‬ ‫الخٌر‬ ‫أجل‬ ‫من‬ ‫بأنفسهم‬ ‫بالتضحٌة‬ ‫مترددٌن‬ ‫فجأة‬ ‫بدوا‬ ،‫كر‬ُ‫ذ‬ ‫مثلما‬ ‫حرج‬ ‫ظرف‬ ً‫ف‬ ‫ممتلهم‬
.!‫تلن‬ ‫مفاجأة‬ ‫أٌة‬ .‫األشخاص‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫وإنماذ‬
‫إلنجاز‬ ‫بنى‬ُ‫ت‬ ‫الخوارزمٌات‬ ‫إن‬ :‫سابمٌن‬ ‫دون‬ ‫من‬ ‫السٌارات‬ ‫عالم‬ ‫خارج‬ ‫تذكره‬ ‫ٌجدر‬ ‫شًء‬ ‫وهذا‬
‫م‬ ‫هدف‬
‫لهم؟‬ ‫أسبلتن‬ ‫توجٌه‬ ‫لكٌفٌة‬ ‫أو‬ ‫سألتهم‬ ‫لمن‬ ‫تبعا‬ ‫تتغٌر‬ ‫لد‬ ‫المرغوبة‬ ‫النتٌجة‬ ‫أن‬ ‫بٌد‬ ،‫حدد‬
‫فخوارزمٌات‬ :‫فعله‬ ‫الخوارزمٌات‬ ‫تحاول‬ ‫ما‬ ‫مع‬ ‫إلٌن‬ ‫بالنسبة‬ ‫أفضل‬ ‫هو‬ ‫ما‬ ‫ٌنسجم‬ ،‫العادة‬ ً‫ف‬
‫جعل‬ ً‫ف‬ ‫تساعد‬ ‫لد‬ ‫الوجه‬ ‫على‬ ‫التعرف‬ ‫وخوارزمٌات‬ ،‫نفماتن‬ ‫تخفٌض‬ ً‫ف‬ ‫تسهم‬ ‫لد‬ ‫التأمٌن‬
‫تسٌر‬ ‫الطوابٌر‬
‫لمصلحة‬ ‫معرفة‬ ‫المهم‬ ‫من‬ ‫أنه‬ ‫بٌد‬ .)‫األلل‬ ‫على‬ ‫الناس‬ ‫لبعض‬ ‫(بالنسبة‬ ‫أسرع‬ ‫بشكل‬
،‫فٌسبون‬ ،‫أودٌوبل‬ ،‫سبوتٌفاي‬ ،‫ٌوتٌوب‬ :‫أمثال‬ ‫من‬ ‫شركات‬ ‫(لحساب‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫تعمل‬ ‫من‬
‫عمٌمة‬ ‫رغبة‬ ‫لدٌها‬ ‫ألن‬ ‫لٌس‬ ،‫تحبها‬ ً‫الت‬ ‫األشٌاء‬ ‫لخدمة‬ ‫ُنٌت‬‫ب‬ ‫الخوارزمٌات‬ ‫فكل‬ ،)‫شابه‬ ‫وما‬
‫مس‬ ‫تران‬ ‫ألن‬ ‫الجذور‬
‫فترة‬ ‫ألطول‬ ‫فمط‬ ‫تخدمه‬ ‫الذي‬ ‫المولع‬ ً‫ف‬ ‫تبمٌن‬ ‫أن‬ ‫تحاول‬ ‫إنها‬ ‫بل‬ .‫تمتعا‬
.‫اإلعالنات‬ ‫لن‬ ‫سوق‬ُ‫ت‬‫و‬ ً‫ء‬‫أشٌا‬ ‫تبٌعن‬ ‫وأن‬ ،‫ممكنة‬
،‫فٌه‬ ‫نغرق‬ ‫الذي‬ ‫اإلنترنت‬ ‫تكنولوجٌا‬ ‫عالم‬ ‫خلف‬ ‫تمف‬ ً‫الت‬ ‫المرعبة‬ ‫الموة‬ ‫تلن‬ ‫عن‬ ‫لمحات‬ ‫هذه‬
‫ال‬ ً‫الملك‬ ‫المعهد‬ ً‫ف‬ ‫المٌالد‬ ‫أعٌاد‬ ‫محاضرات‬ ً‫ف‬ ‫الكثٌر‬ ‫ستجد‬ ‫ولكن‬
‫لعام‬ ً‫برٌطان‬
ٕٓٔ9
ً‫والت‬
ً‫ف‬ "‫الخفٌة‬ ‫الرٌاضٌات‬ ‫لوة‬ : ‫وأكاذٌب‬ ‫"أسرار‬ : ‫عنوان‬ ‫تحمل‬
ٕٙ
‫و‬
ٕ7
‫و‬
ٕ4
‫الشهر‬ ‫من‬
‫رادٌو‬ ً‫س‬ ً‫ب‬ ً‫ب‬ ً‫ف‬ ‫وتنمل‬ ‫الجاري‬
ٗ
.ً‫ء‬‫مسا‬ ‫الثامنة‬ ‫الساعة‬ ً‫ف‬
: ً‫ا‬‫أخٌر‬
-
-
‫الخوارزمٌات‬ ‫علم‬ | ‫العالم‬ ‫غٌرت‬ ‫اكتشافات‬
:
-
‫العرب‬ ‫طمس‬
-
:‫الترجمة‬ ‫بعد‬ ‫عرف‬ ‫(والذي‬ ‫الخوارزمٌات‬ ‫علم‬ ‫ُعنى‬ٌ
Algorithm
‫بوضع‬ )
‫الخوارزمٌات‬ ‫وسمٌت‬ .‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫والمتسلسلة‬ ‫والمنطمٌة‬ ‫الرٌاضٌة‬ ‫الخطوات‬ ‫من‬ ‫مجموعة‬
‫التاسع‬ ‫المرن‬ ً‫ف‬ ‫ابتكرها‬ ‫الذي‬ ً‫الخوارزم‬ ‫موسى‬ ‫بن‬ ‫دمحم‬ ‫جعفر‬ ‫أبو‬ ‫العالم‬ ‫إلى‬ ‫نسبة‬ ‫االسم‬ ‫بهذا‬
.‫المٌالدي‬
ً‫ه‬ ‫ما‬
‫الخوارزمٌة؟‬
‫حٌث‬ .‫والتكرار‬ ‫واالختٌار‬ ‫التسلسل‬ :ً‫وه‬ ‫تراكٌب‬ ‫ثالثة‬ ‫من‬ ‫تتكون‬ ‫طرٌمة‬ ً‫ه‬ ‫الخوارزمٌة‬
‫حلها‬ ‫ٌمكن‬ ‫ال‬ ‫المشاكل‬ ‫بعض‬ ‫أن‬ ‫إال‬ ،‫المتسلسلة‬ ‫التعلٌمات‬ ‫من‬ ‫مجموعة‬ ‫على‬ ‫الخوارزمٌة‬ ‫تحتوي‬
‫االختبار‬ ‫نتٌجة‬ ‫كانت‬ ‫فإذا‬ ،‫الشروط‬ ‫بعض‬ ‫اختبار‬ ‫إلى‬ ‫تحتاج‬ ‫ولد‬ ،‫للتعلٌمات‬ ‫بسٌط‬ ‫بتسلسل‬
‫من‬ ‫مختلف‬ ‫آخر‬ ‫مسار‬ ‫تتبع‬ ‫خاطبة‬ ‫كانت‬ ‫وإذا‬ ،‫المتسلسلة‬ ‫التعلٌمات‬ ‫من‬ ‫مسار‬ ‫تتبع‬ ‫صحٌحة‬
‫إعادة‬ ‫من‬ ‫بد‬ ‫ال‬ ‫المشاكل‬ ‫بعض‬ ‫حل‬ ‫وعند‬ .‫االختٌار‬ ‫أو‬ ‫المرار‬ ‫اتخاذ‬ ‫ٌسمى‬ ‫ما‬ ‫وهذا‬ .‫التعلٌمات‬
.‫التكرار‬ ‫علٌه‬ ‫ٌطلك‬ ‫ما‬ ‫وهذا‬ .‫المرات‬ ‫من‬ ‫عدد‬ ‫الخطوات‬ ‫تسلسل‬ ‫نفس‬
‫الخوارزمٌات‬ ‫علم‬ ‫مبتكر‬
‫علما‬ ‫كان‬
‫وبالد‬ ‫العراق‬ ‫من‬ ‫معظمهم‬ ‫وكان‬ ،‫بالغة‬ ‫بدلة‬ ‫الحساب‬ ‫ٌعرفون‬ ‫المسلمٌن‬ ‫الرٌاضٌات‬ ‫ء‬
‫أهم‬ ‫من‬ ‫اعتبر‬ ‫والذي‬ ً‫الخوارزم‬ ‫موسى‬ ‫بن‬ ‫دمحم‬ ‫العلماء‬ ‫هؤالء‬ ‫ومن‬ ،‫الوسطى‬ ‫وآسٌا‬ ‫فارس‬
‫بعلم‬ ‫اسمه‬ ‫وارتبط‬ ،‫المٌالدي‬ ‫التاسع‬ ‫المرن‬ ً‫ف‬ ‫الرٌاضٌات‬ ‫علم‬ ً‫ف‬ ‫برزوا‬ ‫الذٌن‬ ‫المسلمٌن‬ ‫العلماء‬
‫ا‬ ‫الخوارزمٌات‬
‫عمل‬ ‫آلٌة‬ ً‫ف‬ ‫األساس‬ ‫وكان‬ ً‫ا‬‫جد‬ ً‫ا‬‫مهم‬ ‫ظهوره‬ ‫كان‬ ‫والذي‬ ،‫الجبر‬ ‫بعلم‬ ‫الترن‬ ‫لذي‬
.‫الحدٌثة‬ ‫الحواسٌب‬
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
43
0202
‫م‬
–
5221
‫هـ‬
‫الخوارزمٌات‬ ‫علم‬ ‫أهمٌة‬
‫تحل‬ ‫آلة‬ ‫لصنع‬ ‫نموذج‬ ‫بإنشاء‬ "‫تٌرٌنغ‬ ‫"االن‬ ً‫البرٌطان‬ ‫الرٌاضٌات‬ ‫عالم‬ ‫لام‬ ‫العشرٌن‬ ‫المرن‬ ً‫ف‬
‫اﻵ‬ ‫تلن‬ ‫واعتبرت‬ ،‫الخوارزمٌات‬ ‫لعلم‬ ً‫ا‬‫وفم‬ ‫معمدة‬ ‫رٌاضٌة‬ ‫مسابل‬
،‫للحاسوب‬ ‫نموذج‬ ‫أول‬ ‫لة‬
‫تستخدم‬ ً‫الت‬ ‫اﻵلة‬ ‫تلن‬ ‫استعملت‬ ‫كما‬ ،‫برمجة‬ ‫لغة‬ ‫بمثابة‬ ‫تستعملها‬ ً‫الت‬ ‫الخوارزمٌة‬ ‫واعتبرت‬
‫رسابل‬ ‫على‬ ‫التنصت‬ ‫من‬ ‫البرٌطانٌٌن‬ ‫مكنت‬ ً‫والت‬ ‫األلمانٌة‬ "‫"إنٌجما‬ ‫شٌفرة‬ ‫لفن‬ ‫الخوارزمٌات‬
‫كمحر‬ ،‫الخوارزمٌات‬ ‫ٌستخدم‬ ‫ال‬ ‫الحاسوب‬ ً‫ف‬ ‫شًء‬ ‫من‬ ‫ما‬ ‫والٌوم‬ ،‫األلمان‬
‫ولغات‬ ‫البحث‬ ‫كات‬
.‫وغٌرها‬ ‫والفٌدٌوهات‬ ‫البرمجة‬
‫الختام‬ ً‫وف‬
-
‫لدموه‬ ‫وما‬ ‫وانجازاتهم‬ ‫والمسلمٌن‬ ‫العرب‬ ‫العلماء‬ ‫من‬ ‫اﻵالف‬ ‫بأسماء‬ ‫تارٌخنا‬ ‫ٌزخر‬
‫ٌستخدم‬ ‫الزال‬ ‫وبعضها‬ ‫والمعارف‬ ‫العلوم‬ ‫جمٌع‬ ‫منها‬ ‫استفادت‬ ‫وابتكارات‬ ‫اختراعات‬ ‫من‬ ‫للبشرٌة‬
‫رمضان‬ ‫شهر‬ ‫أٌام‬ ‫طوال‬ ‫لكم‬ ‫نستعرض‬ ،‫اﻵن‬ ‫حتى‬
‫غٌرت‬ ‫"اكتشافات‬ ‫السلسلة‬ ً‫ف‬ ‫المبارن‬
‫على‬ ‫الحٌاة‬ ‫وجه‬ ‫بها‬ ‫فغٌروا‬ ‫المسلمٌن‬ ‫علماء‬ ‫لدمها‬ ً‫الت‬ ‫واالبتكارات‬ ‫االختراعات‬ ‫بعض‬ "‫العالم‬
.‫العصور‬ ‫مر‬
‫الخالصة‬
:
-
ً‫ف‬ ‫تعرفنا‬
‫سبك‬ ‫ما‬
‫على‬
‫وهندسة‬ ‫الحاسب‬ ‫علوم‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫وأهمٌة‬ ‫الخوارزمٌة‬ ً‫ه‬ ‫ما‬
‫حل‬ ‫خطوات‬ ‫على‬ ‫وتعرفنا‬ ،‫البرمجٌات‬
‫بالشٌفرة‬ ‫الخوارزمٌات‬ ‫عن‬ ‫التعبٌر‬ ‫وطرق‬ ‫الخوارزمٌة‬
‫العملٌة‬ ‫األمثلة‬ ‫خالل‬ ‫من‬ ‫حاسوبٌة‬ ‫برامج‬ ‫إلى‬ ‫ذلن‬ ‫بعد‬ ‫تحوٌلها‬ ‫ثم‬ ‫االنسٌابٌة‬ ‫والمخططات‬ ‫الوهمٌة‬
‫المبتدبٌن‬ ‫تناسب‬ ً‫الت‬ ‫البسٌطة‬
.
‫وأهم‬ ،‫الخوارزمٌات‬ ‫تعلم‬ ‫من‬ ‫كمبرمج‬ ‫تجنٌها‬ ً‫الت‬ ‫الفوابد‬ ‫أبرز‬ ‫على‬ ‫الختام‬ ً‫ف‬ ‫تعرفنا‬ ‫كما‬
‫المر‬
‫لتكون‬ ‫تسعى‬ ‫كنت‬ ‫فإذا‬ ،‫لالحتراف‬ ‫الصفر‬ ‫من‬ ‫الخوارزمٌات‬ ‫تشرح‬ ً‫الت‬ ‫العربٌة‬ ‫اجع‬
‫الحسبان‬ ً‫ف‬ ‫تضعها‬ ‫أن‬ ً‫ٌنبغ‬ ً‫الت‬ ‫المهمة‬ ‫األمور‬ ‫أحد‬ ‫الخوارزمٌات‬ ‫فتعلم‬ ‫ا‬ً‫ف‬‫محتر‬ ‫ا‬ً‫ج‬‫مبرم‬
‫الهدف‬ ‫هذا‬ ‫تحمٌك‬ ‫على‬ ‫لتساعدن‬
.
‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ / ‫م‬.‫أ‬ ‫إعداد‬
‫إ‬ ‫الشاهل‬
‫علن‬ ‫ىل‬
‫اخلىارزهياث‬
‫التدفق‬ ‫وخرائط‬
44
0202
‫م‬
–
5221
‫هـ‬
‫المصادر‬
‫والمراجع‬
:
-
-
‫ومبادىء‬ ‫خوارزمٌات‬ :‫مساق‬
‫أبوبكر‬ ‫بسام‬ ‫دمحم‬.‫م‬ / ‫المؤلف‬ .‫البرمجة‬
-
.‫مؤلف‬ ‫بدون‬ / ‫المؤلف‬ .‫والخوارزمٌات‬ ‫العلمٌات‬ ‫سٌر‬ ‫خرابط‬
-
‫الغدا‬ ‫سامر‬ .‫م‬ / ‫المؤلف‬ .) ‫التدفمٌة‬ ‫والمخططات‬ ‫الخوارزمٌات‬ ( ‫الحاسبات‬ ‫برامج‬ ‫تصمٌم‬
-
‫جبرٌل‬ ‫دمحم‬ ‫المهدي‬.‫م‬ / ‫المؤلف‬ .‫اإلنسٌابٌة‬ ‫والمخططات‬ ‫الخوارزمٌات‬ ً‫ف‬ ‫أساسٌات‬
50919484
-
tech
-
and
-
https://www.bbc.com/arabic/science
://ar.wikipedia.org/wiki/%D8%B9%D9%84%D9%85_%D8%A7%D9%84
https
%D8%AE%D9%88%D8%A7%D8%B1%D8%B2%D9%85%D9%8A%D8%A7
%D8%AA
8%B1%D8%B2%
https://ar.wikipedia.org/wiki/%D8%AE%D9%88%D8%A7%D
D9%85%D9%8A%D8%A9
MIT
BBC
includehelp
.Skiena, Steven S. The algorithm design manual: Text. Vol. 1. Springer Science &
Business Media, 1998
.Cormen, Thomas H., et al. Introduction to algorithms. MIT press, 2009
-
apost.com/%D8%B3%D9%84%D8%B3%D9%84%D8%A9
https://elakademi
-
-
%D8%AA%D8%B9%D9%84%D9%85
%D8%A7%D9%84%D8%AE%D9%88%D8%A7%D8%B1%D8%B2%D9%85%D9%8A%D8
-
%D9%87%D9%8A
-
%D9%85%D8%A7
-
%A7%D8%AA
%D8%A7%D9%84%D8%AE%D9%88%D8%A7%D8%B1%D8%B2%D9%85
/
https://www.arabiaweather.com/ar/content/%D8%A7%D9%83%D8%AA%D8%B4%D
8%A7%D9%81%D8%A7%D8%AA-%D8%BA%D9%8A%D8%B1%D8%AA-
%D8%A7%D9%84%D8%B9%D8%A7%D9%84%D9%85-%D8%B9%D9%84%D9%85-
%D8%A7%D9%84%D8%AE%D9%88%D8%A7%D8%B1%D8%B2%D9%85%D9%8A%D8
%A7%D8%AA

الشامل إلى علم الخوارزميات وخرائط التدفق .pdf

  • 1.
    ‫اليونيت‬ ‫اجلوهىريت‬ ‫العايل‬ ‫التعلين‬‫وزارة‬ ‫العلوي‬ ‫والبحث‬ ‫إب‬ ‫جاهعت‬ ‫ميحرلا نمحرلا هللا‬ ‫بسم‬ ‫الرتبيت‬ ‫كليت‬ ‫واملعلىهاث‬ ‫التعلين‬ ‫تكنىلىجيا‬ ‫قسن‬ ‫هاجستري‬ ‫متهيدي‬ 0202 ‫م‬ – 5221 ‫ه‬ ‫الباحث‬ ‫أعداد‬ ‫عبداجلبا‬ /‫م‬.‫أ‬ ‫ر‬ ‫الظفري‬ ‫حسني‬
  • 2.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 2 0202 ‫م‬ – 5221 ‫هـ‬ :‫ادلؤلف‬ ‫كلمة‬ ‫ميحرلا نمحرلا هللا‬‫م‬‫بس‬ ‫آلو‬ ‫وعلى‬ ‫دمحم‬ ‫سيدان‬ ‫وادلرسلني‬ ‫األنبياء‬ ‫خامت‬ ‫على‬ ‫والسالم‬ ‫والصالة‬ ‫احلمدهلل‬ :‫بعد‬ ‫أما‬ ،،‫أمجيعن‬ ‫وصحبة‬ ‫ادلتواضع‬ ‫العمل‬ ‫ىذا‬ ‫طرح‬ ‫ىذا‬ ‫يف‬ ‫وفقت‬ ‫قد‬ ‫أكون‬ ‫أن‬ ‫عزوجل‬ ‫هللا‬ ‫أسئل‬ ‫فإين‬ ‫ع‬ ‫طالب‬ ‫لكل‬ ‫بسيط‬ ‫تبيان‬ ‫إال‬ ‫ليس‬ ‫كان‬‫والذي‬ ‫احلاسوب‬ ‫علوم‬ ‫يف‬ ‫مبتدىء‬ ‫لم‬ ‫سهلة‬ ‫تكون‬ ‫حىت‬ ‫البيانية‬ ‫ادلخططات‬ ‫ورسم‬ ‫التدفق‬ ‫ائط‬‫ر‬‫وخ‬ ‫اخلوارزميات‬ ‫وتعلم‬ ‫الفائدة‬ ‫فيها‬ ‫تكون‬ ‫أن‬ ‫تعاىل‬ ‫هللا‬ ‫وأسئل‬ ،‫كذلك‬‫واحلفظ‬ ‫اإلستيعاب‬ ‫وسهلة‬ ‫الفهم‬ ‫ان‬‫ز‬‫مي‬ ‫يف‬ ‫تكون‬ ‫وأن‬ ‫مطلع‬ ‫لكل‬ ‫الواضحة‬ ‫وادلعلومة‬ ‫عنها‬ ‫يبحث‬ ‫من‬ ‫لكل‬ .‫تعاىل‬ ‫نلقاه‬ ‫يوم‬ ‫حسناتنا‬ ‫اغفر‬ ‫اللهم‬ ‫احلساب‬ ‫يقوم‬ ‫يوم‬ ‫وادلؤمنات‬ ‫وللمؤمنني‬ ‫ولوالدي‬ ‫يل‬ ‫اغفر‬ ‫اللهم‬ ‫األمني‬ ‫دمحم‬ ‫هللا‬ ‫رسول‬ ‫على‬ ‫والسالم‬ ‫والصالة‬ ‫أمجعني‬ ‫وميتنا‬ ‫وحينا‬ ‫وشهدائنا‬ ‫دلوتنا‬ ‫الدين‬ ‫يوم‬ ‫إىل‬ ‫ين‬‫ر‬‫الطاى‬ ‫وصحبة‬ ‫آلو‬ ‫وعلى‬ ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬ /‫م‬.‫أ‬
  • 3.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 3 0202 ‫م‬ – 5221 ‫هـ‬ ‫ال‬ :‫ممدمة‬ ‫فروعه؟‬ ً‫ه‬ ‫وما‬ ‫الحاسوب‬ ‫علم‬ ‫هو‬ ‫ما‬ … ‫علوم‬ ‫أو‬ ‫الحوسبة‬ ‫أو‬ ‫الحاسب‬ ‫علوم‬ ‫التفاصٌل‬ ‫الٌن‬ ‫الكمبٌوتر‬ Computer science ‫باإلضافة‬ ،‫وتطبٌماتها‬ ‫بالحوسبة‬ ‫ٌختص‬ ً‫وعمل‬ ً‫علم‬ ‫منهج‬ ‫الجدوى‬ ‫دراسة‬ ‫إلى‬ ‫تهدف‬ ً‫الت‬ ‫المنهجٌة‬ ‫الدراسات‬ ‫من‬ ً‫ا‬‫نوع‬ ‫كونه‬ ‫إلى‬ feasibility ‫والبنٌة‬ ، structure ‫والك‬ ، ‫والعبارات‬ ‫المصطلحات‬ ‫من‬ ‫ثٌر‬ expression ‫والمكننة‬ mechanization ‫والخوارزمٌات‬ methodical procedures ‫تخزٌن‬ ‫إلى‬ ‫تهدف‬ ً‫الت‬ ، ‫المعلومات‬ ‫إلى‬ ‫الوصول‬ ‫بهدف‬ ‫والتمدٌمات‬ ‫باالتصاالت‬ ‫المٌام‬ ّ‫م‬‫ث‬ ،‫ومعالجتها‬ ‫المعلومات‬ ‫وعت‬ ‫الحاسوب‬ ‫برمجٌات‬ ‫دراسة‬ ‫ٌجب‬ ‫الحاسب‬ ‫علوم‬ ‫وإلتمان‬ ،‫المطلوبة‬ ‫بطرق‬ ‫الحاسوب‬ ‫اد‬ .‫الحاسوبٌة‬ ‫األنظمة‬ ‫وتصمٌم‬ ،‫الحوسبة‬ ‫ونظرٌات‬ ،‫الكمبٌوتر‬ ‫بعالم‬ ‫والتخصص‬ ،‫علمٌة‬ ‫الحاسب‬ ‫علوم‬ ‫تعرٌف‬ ‫والرٌاضٌات‬ ‫الحاسوب‬ ‫عن‬ ‫تنتج‬ ً‫الت‬ ‫المعرفة‬ ‫تطبٌك‬ ‫بإمكانٌة‬ ‫مختص‬ ‫علم‬ ‫هو‬ ‫الحاسب‬ ‫علوم‬ ‫حلها‬ ‫متطلبات‬ ‫وتحدٌد‬ ‫المعضالت‬ ‫تحلٌل‬ ‫إمكانٌة‬ ‫مع‬ ،‫المعرفة‬ ‫فروع‬ ‫كافة‬ ‫على‬ ‫باستعمال‬ ‫األخرى‬ ‫العملٌات‬ ‫وكافة‬ ‫النظام‬ ‫وتمٌٌم‬ ‫تنفٌذها‬ ّ‫م‬‫ث‬ ،‫الالزمة‬ ‫التصمٌمات‬ ‫بجمٌع‬ ‫المٌام‬ ‫مع‬ ،‫الحاسوب‬ ‫بالفرق‬ ‫الخاصة‬ ‫المشتركة‬ ‫األهداف‬ ‫وتحمٌك‬ ‫أكبر‬ ‫بفعالٌة‬ ‫العمل‬ ‫لتسهٌل‬ ،‫تستعمل‬ ً‫الت‬ ‫والبرامج‬ .‫والمجموعات‬ ‫الحاسب‬ ‫علوم‬ ‫فروع‬ ‫دراسة‬ ‫خالله‬ ‫من‬ ‫ٌتم‬ : ‫النظري‬ ‫الحاسوب‬ ‫علم‬ ‫أو‬ ،‫الحوسبة‬ ‫نظرٌات‬ ‫وجمٌع‬ ،‫الصورٌة‬ ‫اللغات‬ ‫التكالٌف‬ ‫حساب‬ ‫وآلٌة‬ ،‫الخوارزمٌات‬ ‫إلى‬ ‫باإلضافة‬ ،‫الصورٌة‬ ‫اللغات‬ ‫ترجمة‬ ‫مهارات‬ ‫بدراسة‬ ‫ٌختص‬ :ً‫العمل‬ ‫الحاسوب‬ ‫علم‬ ،‫بسهولة‬ ‫تداولها‬ ‫الممكن‬ ‫من‬ ‫تطبٌمات‬ ‫إلى‬ ‫ذلن‬ ‫بعد‬ ‫تحول‬ ً‫الت‬ ،‫والخوارزمٌات‬ ،‫النظرٌات‬ ‫ٌتماشى‬ ‫منتظم‬ ‫بشكل‬ ‫وتطوٌرها‬ .‫الحٌاة‬ ‫مجاالت‬ ‫وكافة‬ ،‫األخرى‬ ‫العلوم‬ ‫مع‬ ‫الحٌاة‬ ً‫نواح‬ ً‫ف‬ ‫للحاسوب‬ ‫المتعددة‬ ‫بالتطبٌمات‬ ‫ٌهتم‬ ‫الذي‬ ‫العلم‬ ‫هو‬ :ً‫التطبٌم‬ ‫الحاسوب‬ ‫علم‬ ‫اإلدارٌة‬ ‫األنظمة‬ ‫تسٌٌر‬ ‫إلى‬ ‫باإلضافة‬ ،‫الحاسب‬ ‫باستعمال‬ ‫والتصنٌع‬ ،‫التصمٌم‬ :‫مثل‬ ‫المختلفة‬ .‫والصناعٌة‬ ‫بط‬ ‫ٌهتم‬ ‫الذي‬ ‫الفرع‬ ‫هو‬ :‫الحاسوب‬ ‫هندسة‬ ‫بعتاد‬ ً‫ا‬‫أٌض‬ ‫ٌعرف‬ ‫ما‬ ‫أو‬ ‫الحاسوب‬ ‫ّات‬‫د‬‫ع‬ُ‫م‬ ‫عمل‬ ‫رٌمة‬ ‫المعلوماتٌة‬ ‫الهندسة‬ :‫مثل‬ ً‫النواح‬ ‫من‬ ‫الكثٌر‬ ‫على‬ ‫تعتمد‬ ً‫الت‬ ‫الحواسٌب‬ ‫وصناعة‬ ،‫الحاسوب‬ ‫علم‬ ‫الحاسب‬ ‫لعلوم‬ ‫أخرى‬ ‫ألسام‬ .‫واإللكترونٌات‬ ،‫الكٌمٌاء‬ ‫علم‬ ‫إلى‬ ‫باإلضافة‬ ،‫والفٌزٌاء‬ ،‫النظرٌة‬ ‫ٌعنى‬ :‫النظرٌة‬ ‫والبٌانات‬ ‫الخوارزمٌات‬ .‫البٌانات‬ ‫علوم‬ ً‫ف‬ ‫النظري‬ ‫الجانب‬ ‫بدراسة‬ ‫بناء‬ ّ‫م‬‫ث‬ ،‫والتصمٌم‬ ‫التحلٌل‬ ‫ٌشمل‬ ‫الذي‬ ً‫العمل‬ ‫الجانب‬ ‫بدراسة‬ ‫ٌعنى‬ :‫الحاسوبٌة‬ ‫التمنٌات‬ ‫علم‬ .‫للحواسٌب‬ ‫الصلبة‬ ‫األساسٌات‬
  • 4.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 4 0202 ‫م‬ – 5221 ‫هـ‬ ‫المجاالت‬ ‫من‬ ‫الكثٌر‬ ‫الحاسب‬ ‫بعلوم‬ ‫سٌتخصص‬ ‫الذي‬ ‫الطالب‬ ‫ٌدرس‬ ‫الحاسب‬ ‫علوم‬ ‫تخصص‬ ٌ‫الر‬ ‫علم‬ ‫دراسة‬ :‫مثل‬ ،‫المتنوعة‬ ‫والتكامل‬ ‫التفاضل‬ ‫على‬ ‫التركٌز‬ ‫مع‬ ‫اضٌات‬ calculus ‫والجبر‬ ، ‫ٌساعد‬ ‫حٌث‬ ،‫الحاسوب‬ ‫برمجة‬ ً‫ف‬ ‫األساسٌة‬ ‫العلوم‬ ‫أهم‬ ‫من‬ ‫الرٌاضٌات‬ ‫علم‬ ‫ٌعتبر‬ ‫حٌث‬ ،ً‫الخط‬ :‫مثل‬ ‫الشهٌرة‬ ‫البرمجة‬ ‫لغات‬ ‫من‬ ‫الكثٌر‬ ‫الطالب‬ ‫ٌدرس‬ ‫كما‬ ،‫للبٌانات‬ ‫الحاسوب‬ ‫معالجة‬ ‫على‬ ‫برنامج‬ java ‫وبرنامج‬ HTML ‫ع‬ ‫من‬ ‫والملٌل‬ ، ‫وعلوم‬ ،‫عملها‬ ‫وآلٌة‬ ‫اإللكترونٌة‬ ‫الدارات‬ ‫لوم‬ .‫والرابعة‬ ‫الثالثة‬ ‫السنة‬ ‫أثناء‬ ‫الخوارزمٌات‬ ‫ال‬ ‫شن‬ ‫الخوارزمٌات‬ ‫تعلم‬ ‫فكلمة‬ ‫البرمجة‬ ‫تعلم‬ ‫لررت‬ ‫إذا‬ ‫لن‬ ‫وجهت‬ ً‫الت‬ ‫المهمة‬ ‫النصابح‬ ‫أحد‬ ‫خوارزمٌة‬ ‫والعلوم‬ ‫الرٌاضٌات‬ ‫مثل‬ ‫المجاالت‬ ‫من‬ ‫وغٌرها‬ ‫البرمجة‬ ‫مجال‬ ً‫ف‬ ‫ا‬ً‫كثٌر‬ ‫تتردد‬ ‫لن‬ ‫ٌستمٌم‬ ‫أن‬ ‫ٌمكن‬ ‫ال‬ ً‫الت‬ ‫المفاهٌم‬ ‫أهم‬ ‫من‬ ً‫فه‬ ،‫ا‬ً‫ص‬‫خصو‬ ‫بالحاسوب‬ ‫ٌتعلك‬ ‫ما‬ ‫وكل‬ ‫والمنطك‬ ‫بدونها‬ ‫الحاسب‬ ‫وعلوم‬ ‫والرٌاضٌات‬ ‫البرمجة‬ ‫تعلم‬ . ،‫الخوازمٌات‬ ‫أتعلم‬ ‫وكٌف‬ ،‫الخوارزمٌة‬ ً‫ه‬ ‫ما‬ ‫تتساءل‬ ‫كنت‬ ‫إذا‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫أهمٌة‬ ‫وما‬ ‫وكٌف‬ ،‫تعلمها‬ ً‫عل‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫أنواع‬ ً‫ه‬ ‫وما‬ ،‫خاص‬ ‫بشكل‬ ‫البرمجة‬ ً‫وف‬ ‫الحاسب‬ ‫علوم‬ ‫عن‬ ‫معرفته‬ ‫تحتاج‬ ‫ما‬ ‫كل‬ ‫سٌالها‬ ً‫ف‬ ‫سنستعرض‬ ‫حٌث‬ ،‫لن‬ ‫الممالة‬ ‫فهذه‬ ‫خوارزمٌة‬ ‫أفضل‬ ‫أكتب‬ ً‫الت‬ ‫الغنٌة‬ ‫العربٌة‬ ‫التعلٌمٌة‬ ‫المصادر‬ ‫من‬ ‫مجموعة‬ ‫لن‬ ‫ونوفر‬ ،‫الخوارزمٌات‬ ‫تعلم‬ ‫على‬ ‫تساعدن‬ ‫طرٌمة‬ ‫بأفضل‬ ‫الحاسوب‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫حل‬ ‫وطرق‬ ‫الخوارزمٌات‬ ‫رموز‬ . ‫مجاالت‬ ‫عدة‬ ً‫ف‬ ‫بالعمل‬ ‫بدأت‬ ‫عندما‬ ‫اكتشفتها‬ ‫حمٌمة‬ ‫هذه‬ ،‫رونمها‬ ‫تفمد‬ ‫شغف‬ ‫بدون‬ ‫البرمجة‬ ‫لمدة‬ ‫البرمجة‬ ً‫ف‬ ‫بالعمل‬ ‫فٌه‬ ‫أستمتع‬ ‫الذي‬ ‫الولت‬ ‫نفس‬ ً‫ف‬ ‫لساعات‬ ‫العمل‬ ْ‫ك‬ِ‫أط‬ ‫لم‬ ‫البرمجة‬ ‫خارج‬ ‫متتا‬ ‫شهور‬ ‫بشدة‬ ‫لمجالهم‬ ‫وحبهم‬ ‫المبرمجٌن‬ ‫معظم‬ ‫تمٌز‬ ّ‫سر‬ ‫هو‬ ‫الشغف‬ ‫هذا‬ ‫لٌة؛‬ ! ‫البرمجة‬ ً‫ف‬ ‫للشغف‬ ‫الوصول‬ ‫المستحٌل‬ ‫من‬ ‫سٌكون‬ ‫خطأ‬ ‫بشكل‬ ‫البرمجة‬ ‫بتعلم‬ ‫بدأت‬ ‫وإن‬ ‫أل‬ ‫نن‬ ‫والفهم‬ ‫والتعمك‬ ‫للتعلم‬ ‫ولٌس‬ ‫دروس‬ ‫عدة‬ ‫من‬ ‫لإلنتهاء‬ ً‫وسع‬ ‫وتلمٌن‬ ‫حفظ‬ ‫على‬ ‫دورن‬ ‫سٌمتصر‬ ‫ا‬ ‫حفظ‬ ً‫ا‬‫إطالل‬ ‫المهم‬ ‫فلٌس‬ ‫العمٌك؛‬ ‫أل‬ ‫كوا‬ ‫المحترفٌن‬ ‫المبرمجٌن‬ ‫معظم‬ ‫بالعكس‬ ‫بل‬ ‫الكتابة‬ ‫وطرٌمة‬ ‫د‬ ‫من‬ ‫طوٌلة‬ ‫فترة‬ ‫بعد‬ ‫(إال‬ ‫أعمالهم‬ ً‫ف‬ ‫ٌستخدمونها‬ ً‫الت‬ ‫التمنٌات‬ ‫أوامر‬ ‫بمعظم‬ ‫علم‬ ‫على‬ ‫لٌسوا‬ ‫ا‬ ‫بسهولة‬ ‫حفظ‬ُ‫ت‬‫ف‬ ‫التمنٌة‬ ‫هذه‬ ‫ممارسة‬ ‫أل‬ ‫أما‬ ‫السرعة؛‬ ‫بعض‬ ‫إال‬ ‫أهمٌة‬ ‫للحفظ‬ ‫لٌس‬ ‫لكن‬ )‫كواد‬ ‫بعض‬ ‫استخدام‬ ‫بل‬ ‫أكواد‬ ‫حفظ‬ ‫لٌست‬ ‫البرمجة‬ ‫أكواد‬ ‫إلى‬ ‫عملن‬ ً‫ف‬ ‫ما‬ ‫تحوٌل‬ ً‫ف‬ ‫البرمجة‬ ‫مبادئ‬ ً‫ا‬‫إطالل‬ ‫أكواد‬ ‫حفظ‬ ‫ولٌس‬ ‫الحاسوب؛‬ ‫ٌفهمها‬ . ‫ا‬ ‫بسبب‬ ‫تعلمهم‬ ‫رحلة‬ ً‫ف‬ ‫الجدد‬ ‫المبرمجٌن‬ ‫من‬ ‫سنوات‬ ‫ٌضٌع‬ ً‫العرب‬ ‫الوطن‬ ً‫ف‬ ً‫ا‬‫وغالب‬ ‫إل‬ ‫تجاه‬ ‫ا‬ ‫وكتابة‬ ‫برمجة‬ ‫لغة‬ ‫بتعلم‬ ‫ٌوم‬ ‫أول‬ ‫من‬ ‫مباشرة‬ ‫فٌبدأ‬ ،‫فٌه‬ ‫ٌسٌر‬ ‫الذي‬ ‫الخاطا‬ ‫والمسار‬ ‫أل‬ ‫لكن‬ ‫كواد‬ ً‫ف‬ ‫هذه‬ ،‫والشروط‬ ‫التكرارٌة‬ ‫والحلمات‬ ‫والدوال‬ ‫كالمتغٌرات‬ ‫أساسٌة‬ ‫مبادئ‬ ‫لها‬ ‫البرمجة‬ ‫الحمٌمة‬ ‫به‬ ‫تختص‬ ‫ما‬ ‫لتنفٌذ‬ ‫لغة‬ ‫كل‬ ‫مع‬ ‫مختلف‬ ‫بشكل‬ ‫ستخدم‬ُ‫ت‬‫و‬ ‫البرمجة‬ ‫لغات‬ ‫جمٌع‬ ً‫ف‬ ‫مشتركة‬ ‫المبادئ‬ ‫وما‬ ‫الدالة‬ ً‫ه‬ ‫ما‬ ‫تعرف‬ ‫أن‬ ‫دون‬ ‫ما‬ ‫بلغة‬ ‫دالة‬ ‫أو‬ ‫متغٌر‬ ‫تنشا‬ ‫بتعلم‬ ‫بدأت‬ ‫إن‬ ‫لكن‬ ... ‫اللغة‬ ‫هذه‬ ‫ا‬ ‫ستجد‬ ‫؛‬ ‫ٌعمالن‬ ‫وكٌف‬ ‫استخدامهما‬ ‫من‬ ‫الهدف‬ ‫وما‬ ‫المتغٌر‬ ‫هو‬ ‫أل‬ ‫وسٌكون‬ ‫للغاٌة‬ ‫صعبة‬ ‫مور‬ ‫البرمجة‬ ‫مع‬ ‫الشغف‬ ‫لمرحلة‬ ‫ابدا‬ ‫تصل‬ ‫ولن‬ ،‫وإبداع‬ ‫فهم‬ ‫ولٌس‬ ‫وحفظ‬ ‫تلمٌن‬ ‫تعلمن‬ ‫اسلوب‬ ‫وا‬ ‫إل‬ ‫ولن‬ ‫التولف‬ ‫على‬ ‫جبر‬ُ‫ت‬‫س‬ ‫بطوٌلة‬ ‫لٌست‬ ‫فترة‬ ‫بعد‬ ً‫بالتال‬ ،‫فٌها‬ ‫المشكالت‬ ‫بحل‬ ‫والتلذذ‬ ‫بداع‬ ‫التمدم‬ ‫تستطٌع‬ ‫واحدة‬ ‫خطوة‬ ‫ولو‬ ! ‫تعلم‬ ‫لبل‬ ً‫ال‬‫أو‬ ‫الخوارزمٌات‬ ‫بتعلم‬ ‫صحٌح‬ ‫بشكل‬ ‫بدأت‬ ‫لو‬ ‫لكن‬ ‫العمٌك‬ ‫والفهم‬ ‫التعمك‬ ‫من‬ ‫وستتمكن‬ !‫كاملة‬ ‫سنة‬ ً‫ف‬ ‫ٌتعلمونه‬ ‫ما‬ ‫شهر‬ ً‫ف‬ ‫ستتعلم‬ ،‫البرمجة‬ ً‫ف‬ ‫ٌدور‬ ‫ما‬ ‫بتحوٌل‬ ‫لتبدأ‬ ‫المفاتٌح‬ ‫لوحة‬ ‫ٌدان‬ ‫تالمس‬ ‫عندما‬ ‫وإبداع‬ ‫شغف‬ ‫عندن‬ ‫سٌتولد‬ ً‫وبالتال‬ ‫لمشك‬ ّ‫ل‬‫ح‬ ‫من‬ ‫عملن‬ ‫أكواد‬ ‫إلى‬ ‫ما‬ ‫فكرة‬ ‫تنفٌذ‬ ‫أو‬ ‫ما‬ ‫برمجٌة‬ ‫لة‬ . ‫تعلٌمن‬ ‫ستتولى‬ ‫الخوارزمٌات‬ ‫ا‬ ‫المبادئ‬ ‫أل‬ ‫نستخدم‬ ‫لماذا‬ ‫وتتعلم‬ ،‫المبادئ‬ ‫هذه‬ ‫وتفهم‬ ‫تتعلم‬ ‫فمط‬ ،‫أكواد‬ ‫كتابة‬ ‫بدون‬ ‫للبرمجة‬ ‫ساسٌة‬ ‫معظم‬ ً‫ف‬ ‫ستواجهن‬ ً‫الت‬ ‫المشكالت‬ ‫معظم‬ ‫وتعرف‬ ‫التكرارٌة‬ ‫والحلمات‬ ،‫الدوال‬ ،‫المتغٌرات‬ ‫مثال‬
  • 5.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 5 0202 ‫م‬ – 5221 ‫هـ‬ ‫كتا‬ ‫عند‬ ‫اللغات‬ ‫ا‬ ‫البرمجة‬ ‫مبادئ‬ ‫من‬ ‫لمبدأ‬ ‫كود‬ ‫بة‬ ‫أل‬ ً‫ف‬ ‫المبادئ‬ ‫هذه‬ ‫استخدام‬ ً‫ف‬ ‫وتتمرس‬ ،‫ساسٌة‬ ‫ا‬ ‫البنٌة‬ ‫بالضبط‬ ‫ستفهم‬ ‫ستواجهن؛‬ ً‫الت‬ ‫البرمجٌة‬ ‫المشكالت‬ ‫حل‬ ‫أل‬ ‫ساسٌة‬ ‫أل‬ ‫فإن‬ ‫كان؛‬ ‫أٌا‬ ‫كود‬ ‫ي‬ ‫ا‬ ‫أنت‬ ‫تمتلكها‬ ‫البرمجة‬ ‫لغات‬ ‫كل‬ ‫أساسٌات‬ ً‫ا‬‫فتمرٌب‬ ‫الخوارزمٌات‬ ‫تعلمت‬ ‫ﻵ‬ ‫معرفة‬ ‫فمط‬ ‫لن‬ ‫وٌتبمى‬ ‫ن‬ ‫هذه‬ ‫تستخدم‬ ‫كٌف‬ ‫فا‬ ،‫ترٌدها‬ ً‫الت‬ ‫اللغة‬ ‫مع‬ ‫المبادئ‬ ‫إل‬ ً‫ف‬ ‫طرٌمة‬ ‫لها‬ ‫لغة‬ ‫كل‬ ‫أن‬ ‫فمط‬ ‫ختالف‬ ‫استخدام‬ ‫مجاالت‬ ‫ولها‬ ،‫الكتابة‬ ... ‫ا‬ ‫تحرٌن‬ ً‫ف‬ ‫ستخدم‬ُ‫ت‬ ‫لغات‬ ‫فهنان‬ ‫ﻵ‬ ‫تختص‬ ‫لغات‬ ‫وهنان‬ ‫الت‬ ‫اللغات‬ ‫كل‬ ...ً‫ال‬‫مث‬ ‫الهواتف‬ ‫تطبٌمات‬ ‫بناء‬ ً‫ف‬ ‫ستخدم‬ُ‫ت‬ ‫لغات‬ ‫وهنان‬ ‫الوٌب‬ ‫وصفحات‬ ‫بالموالع‬ ‫كبن‬ ‫المفاهٌم‬ ‫نفس‬ ‫تستخدم‬ ‫عند‬ ‫ستتعلمه‬ ‫ما‬ ً‫بالتال‬ ...‫فمط‬ ‫الكتابة‬ ‫طرٌمة‬ ‫تختلف‬ ‫ولكن‬ ‫لها‬ ‫أساسٌة‬ ‫ٌة‬ ‫التعمك‬ ً‫ف‬ ‫مباشرة‬ ‫ستبدأ‬ ‫ثم‬ !‫سنوات‬ ‫ولٌس‬ ... ‫أٌام‬ ً‫ف‬ ‫الكتابة‬ ‫طرٌمة‬ ‫هو‬ ‫سٌكون‬ ‫لغة‬ ‫أي‬ ‫تعلم‬ ‫بدء‬ ‫اللغة‬ ً‫ف‬ ‫أل‬ ‫ا‬ ‫هذه‬ ‫استخدام‬ ‫كٌفٌة‬ ‫بدراسة‬ ‫فتبدأ‬ ،‫أساسٌاتها‬ ‫تعلمت‬ ‫ستكون‬ ‫نن‬ ‫أل‬ ً‫بالتال‬ ...‫ساسٌات‬ ‫ا‬ ‫سٌكون‬ ‫أل‬ ‫مر‬ ‫ٌكون‬ ‫ما‬ ‫أسرع‬ ! ً‫ال‬‫فمث‬ ،‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫مرتبة‬ ‫خطوات‬ ‫عن‬ ‫عبارة‬ ً‫ه‬ ‫فالخوارزمٌة‬ ‫نضرب‬ ‫ثم‬ ،‫بالعرض‬ ً‫نأت‬ ‫ثم‬ ،‫بالطول‬ ً‫ال‬‫أو‬ ً‫نأت‬ ‫مستطٌل‬ ‫مساحة‬ ‫لحساب‬ ‫الهندسة‬ ً‫ف‬ ‫تمول‬ ‫الطول‬ x ‫ا‬ ‫البرمجة‬ ً‫ف‬ ‫أما‬ ،‫بسٌطة‬ ‫خوارزمٌة‬ ‫هذه‬ !‫المساحة‬ ‫على‬ ‫لنحصل‬ ‫العرض‬ ‫أل‬ ‫نفس‬ ‫مر‬ ‫بالمشكال‬ ‫ٌختص‬ ‫لكن‬ ً‫ا‬‫تمرٌب‬ ‫الشًء‬ ‫وحلولها‬ ‫البرمجٌة‬ ‫ت‬ ... ً‫ال‬‫شك‬ ‫تطلب‬ ‫ال‬ ‫الخوارزمٌة‬ ً‫وبالتال‬ ‫على‬ ‫ما‬ ‫لمشكلة‬ ‫حل‬ ‫من‬ ‫عملن‬ ً‫ف‬ ‫ما‬ ‫وضع‬ ‫المهم‬ ‫لها‬ ‫مخططات‬ ‫رسم‬ ‫أو‬ ‫كتابتها‬ ‫ٌمكن‬ ‫بل‬ ً‫ا‬‫معٌن‬ ‫برمجٌة‬ ‫مبادئ‬ ‫ومن‬ ‫ما‬ ‫لغة‬ ً‫ف‬ ‫تعلمته‬ ‫بما‬ ‫بالن‬ ً‫ف‬ ‫ما‬ ‫تطبٌك‬ ‫إال‬ ‫لٌست‬ ‫أٌضا‬ ‫والبرمجة‬ ،‫الورق‬ ‫الحاسوب‬ ‫لٌفهمه‬ . ‫الخوارزمٌة‬ ً‫ه‬ ‫ما‬ ‫؟‬ ‫وتحلٌل‬ ‫الخوارزمٌات‬ ‫تعمد‬ ‫ونظرٌة‬ ‫الخوارمٌات‬ ‫تصمٌم‬ :ً‫وه‬ ‫فروع‬ ‫ثالثة‬ ‫له‬ ‫الخوارزمٌات‬ ‫علم‬ ‫معرفة‬ ‫والثالث‬ ‫المسابل‬ ‫صعوبة‬ ‫تعٌٌن‬ ً‫والثان‬ ‫المسألة‬ ‫لحل‬ ‫طرٌك‬ ‫إٌجاد‬ ‫األول‬ .‫الخوارزمٌات‬ .‫المسألة‬ ‫لحل‬ ‫للخوارزمٌة‬ ‫الكافٌٌن‬ ‫الحفظ‬ ‫ومساحة‬ ‫الزمن‬ ‫مثل‬ ‫المسألة‬ ‫متعلمات‬ ‫الخوارزمٌة‬ algorithm ‫أو‬ ‫الرٌاضٌات‬ ً‫ف‬ ‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫المرتبة‬ ‫التعلٌمات‬ ‫من‬ ‫مجموعة‬ ً‫ه‬ ‫محدود‬ ‫خطوات‬ ‫وعدد‬ ‫محدد‬ ‫زمن‬ ‫خالل‬ ‫الٌومٌة‬ ‫الحٌاة‬ ً‫ف‬ ‫تواجهن‬ ‫مشكلة‬ ‫أي‬ . ‫ر‬ّ‫ك‬‫ف‬ .‫المشكلة‬ ‫بحل‬ ً‫تنته‬ ‫بحٌث‬ ‫بة‬ّ‫ت‬‫ر‬ُ‫م‬‫و‬ ‫واضحة‬ ‫الخوارزمٌة‬ ‫وتعلٌمات‬ ‫خطوات‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬ ‫طبخ‬ ‫وصفة‬ ‫كانت‬ ‫لو‬ ‫كما‬ ‫الخوارزمٌة‬ ً‫ف‬ ‫خطوة‬ ‫ما‬ ‫وجبة‬ ‫تحضٌر‬ ‫طرٌمة‬ ‫الوصفة‬ ‫ّم‬‫د‬‫تم‬ ‫إذ‬ ، ‫وتمدٌمها‬ ‫الوجبة‬ ‫تحضٌر‬ ‫من‬ ‫خطوة‬ ‫آخر‬ ‫وحتى‬ ،‫للوجبة‬ ‫الضرورٌة‬ ‫بالممادٌر‬ ً‫ء‬‫ابتدا‬ ،‫بخطوة‬ . ‫أهمٌة‬ ‫تبرز‬ ‫لكن‬ ‫الحٌاة‬ ‫مجاالت‬ ‫كل‬ ً‫ف‬ ‫ٌطبك‬ ‫أن‬ ‫ٌمكن‬ ‫الخوارزمٌات‬ ‫مفهوم‬ ‫أن‬ ‫ورغم‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫الحاسب‬ ‫علوم‬ ً‫المنطم‬ ‫تفكٌره‬ ‫وتعزز‬ ‫المبرمج‬ ‫عمل‬ ‫تنظم‬ ً‫فه‬ ‫خاص‬ ‫بشكل‬ ‫على‬ ‫ًا‬ٌ‫فعل‬ ‫وتطبٌمها‬ ‫حلها‬ ‫لبل‬ ‫أفضل‬ ‫بشكل‬ ‫وتصورها‬ ‫المشكالت‬ ‫فهم‬ ‫من‬ ‫وتمكنه‬ ً‫والرٌاض‬ ‫مكتوبة‬ ‫حاسوبٌة‬ ‫برامج‬ ‫البرمجة‬ ‫لغات‬ ‫بإحدى‬ . ‫الخوارزمٌات‬ ‫تارٌخ‬ : - ‫تعلٌمات‬ ‫ٌحتوي‬ ‫لوح‬ ‫ألدم‬ ‫على‬ ‫ر‬ِ‫ث‬ُ‫ع‬ ‫إذ‬ ،‫البابلٌٌن‬ ‫إلى‬ ‫المعروفة‬ ‫الخوارزمٌات‬ ‫ألدم‬ ‫عزى‬ُ‫ت‬ ‫لسنة‬ ‫تارٌخه‬ ‫وٌعود‬ ،‫المسمة‬ ‫عملٌة‬ ‫إلجراء‬ ‫خوارزمٌة‬ ٕ٘ٓٓ ‫على‬ ‫كذلن‬ ‫ر‬ِ‫ث‬‫ع‬ ‫ولد‬ .‫المٌالد‬ ‫لبل‬ ‫تعود‬ ‫المدامى‬ ‫المصرٌٌن‬ ‫إلى‬ ‫تعود‬ ‫حسابٌة‬ ‫خوارزمٌات‬ ‫سنة‬ ‫إلى‬ ٔ٘٘ٓ ‫المٌالد‬ ‫لبل‬ . ‫الرٌاضٌة‬ ‫الخوارزمٌات‬ ‫من‬ ‫الكثٌر‬ ‫ظهرت‬ ‫حٌث‬ ،‫الٌونان‬ ‫حمبة‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫استخدام‬ ‫ازداد‬ ً‫وبال‬ ‫خارج‬ ‫تحسب‬ ً‫الت‬ ‫إللٌدس‬ ‫لسمة‬ ‫خوارزمٌة‬ ‫مثل‬ ،‫هذا‬ ‫ٌومنا‬ ‫حتى‬ ‫ستخدم‬ُ‫ت‬ ‫تزال‬ ‫ما‬ ً‫الت‬ ‫المسمة‬ ‫عملٌة‬ .
  • 6.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 6 0202 ‫م‬ – 5221 ‫هـ‬ ،‫اإلسالمٌة‬ ‫الحضارة‬ ‫عصر‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫مفهوم‬ ‫تطور‬ ‫الخوارزمٌات‬ ‫المسلمون‬ ‫استخدم‬ ‫إذ‬ ‫حل‬ ‫خوارزمٌة‬ ً‫ه‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫أشهر‬ ‫ولعل‬ .‫الرٌاضٌة‬ ‫والمسابل‬ ‫المعادالت‬ ‫لحل‬ ‫الرٌاضٌات‬ ‫لعالم‬ "‫والممابلة‬ ‫الجبر‬ ‫"حساب‬ ‫كتاب‬ ً‫ف‬ ‫رت‬ِ‫ك‬ُ‫ذ‬ ً‫الت‬ ‫الثانٌة‬ ‫الدرجة‬ ‫من‬ ‫المعادالت‬ ‫المسلم‬ ً‫الخوارزم‬ ‫موسى‬ ‫بن‬ ‫دمحم‬ ‫اللغة‬ ً‫ف‬ ‫خوارزمٌة‬ ‫كلمة‬ ‫إلٌه‬ ‫نسب‬ُ‫ت‬ ‫والذي‬ ،‫الجبر‬ ‫علم‬ ‫مؤسس‬ ‫الالتٌنٌة‬ ‫اللغات‬ ً‫ف‬ ‫لها‬ ‫الممابلة‬ ‫الكلمة‬ ‫وكذلن‬ ،‫العربٌة‬ algorithm ‫الكلمة‬ ‫من‬ ‫شتمة‬ُ‫م‬‫ال‬ al- Khwārizmī ً‫للخوارزم‬ ً‫الروم‬ ‫االسم‬ ‫وهو‬ ، - ‫الجبر‬ ‫كلمة‬ ‫ا‬ً‫ض‬ٌ‫وأ‬ algebra. ‫كلمة‬ ‫األوروبٌون‬ ‫استخدم‬ algorithm ‫استخدمها‬ ً‫الت‬ ‫والتمنٌات‬ ‫المواعد‬ ‫على‬ ‫للداللة‬ ‫المو‬ ‫من‬ ‫مجموعة‬ ّ‫ي‬‫أ‬ ‫لٌشمل‬ ‫المصطلح‬ ‫هذا‬ ‫م‬ِّ‫م‬ُ‫ع‬ ّ‫م‬‫ث‬ ،‫الجبرٌة‬ ‫المعادالت‬ ‫لحل‬ ً‫الخوارزم‬ ‫اعد‬ ‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫الساعٌة‬ ‫والتمنٌات‬ . ‫مع‬ ‫ا‬ً‫ص‬‫خصو‬ ،‫النهضة‬ ‫عصر‬ ‫ّان‬‫ب‬‫إ‬ ‫اإلسالمٌة‬ ‫الحمبة‬ ‫بعد‬ ‫التطور‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫مفهوم‬ ‫استمر‬ ‫على‬ ‫تنفٌذها‬ ‫ٌمكن‬ ‫خوارزمٌة‬ ‫أول‬ ‫وإنتاج‬ ‫عشر‬ ‫التاسع‬ ‫المرن‬ ً‫ف‬ ‫الحوسبة‬ ‫علم‬ ‫أسس‬ ‫ر‬ ّ‫تطو‬ ‫سنة‬ ‫الحاسوب‬ ٔ4ٗٓ ‫لوفانس‬ ‫آدا‬ ‫ٌد‬ ‫على‬ Ada Lovelace. ٌ‫الص‬ ّ‫م‬‫ث‬ ‫لمفهوم‬ ‫النهابٌة‬ ‫اغة‬ ‫تورنغ‬ ‫آالن‬ ‫ٌد‬ ‫على‬ ‫الخوارزمٌة‬ Alan Turing ‫الشهٌرة‬ ‫آلته‬ ‫عبر‬ ‫تورنغ‬ ‫آلة‬ (Turing machine). ‫الخوارزمٌة‬ ‫أركان‬ : - ‫خوارزمٌة‬ ‫أي‬ ‫تملن‬ ً‫وه‬ ‫ربٌسٌة‬ ‫أركان‬ ‫ثالثة‬ :  ‫المدخالت‬ ‫أو‬ ‫الدخل‬ : ‫علٌها‬ ‫تعمل‬ ً‫الت‬ ‫والمطلوبة‬ ‫الضرورٌة‬ ‫األشٌاء‬ ‫أو‬ ‫البٌانات‬ ‫تمثل‬ ‫ٌسمى‬ ‫عناصره‬ ‫تعداد‬ ّ‫فإن‬ ،‫عناصر‬ ‫عدة‬ ‫من‬ ‫ا‬ً‫ف‬‫مؤل‬ ‫الدخل‬ ‫كان‬ ‫وإن‬ ‫الخوارزمٌة‬ ‫حجم‬ ‫الدخل‬ ‫من‬ ‫مؤلفة‬ ‫نصٌة‬ ‫سلسلة‬ ‫أو‬ ‫مصفوفة‬ ‫عن‬ ‫عبارة‬ ‫الدخل‬ ‫كان‬ ‫إن‬ ً ‫مثال‬ ، n ،‫عنصر‬ ‫ح‬ ّ‫فإن‬ ‫سٌساوي‬ ‫الدخل‬ ‫جم‬ n. ‫وجبة‬ ً‫طه‬ ‫خوارزمٌة‬ ‫دخل‬ ّ‫فإن‬ ‫الطبخ‬ ‫مثال‬ ‫إلى‬ ‫عدنا‬ ‫لو‬ ‫الوجبة‬ ‫إلعداد‬ ‫ستخدمة‬ُ‫م‬‫ال‬ ‫الممادٌر‬ ً‫ه‬ ‫ستكون‬ ‫معٌنة‬ .
  • 7.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 7 0202 ‫م‬ – 5221 ‫هـ‬  ‫الخوارزمٌة‬ ‫متن‬ : ‫المعالجة‬ ‫خطوات‬ ‫من‬ ‫سلسلة‬ ‫علٌه‬ ‫ّك‬‫ب‬‫وتط‬ ،‫الدخل‬ ‫الخوارزمٌة‬ ‫تأخذ‬ ‫كل‬ ‫الطبخ‬ ‫خوارزمٌة‬ ‫متن‬ ‫ٌشمل‬ ، ً ‫مثال‬ .‫ا‬ً‫ف‬‫سل‬ ‫ّدة‬‫د‬‫ح‬ُ‫م‬‫وال‬ ‫المتتابعة‬ ‫الممادٌر‬ ‫تجهٌز‬ ‫عملٌات‬ ‫طهٌها‬ ‫وخطوات‬ ‫ادها‬َ‫د‬‫وإع‬ .  ‫خرجات‬ُ‫م‬‫ال‬ ‫أو‬ ‫الخرج‬ : ‫لنا‬ ‫نتج‬ُ‫ت‬ ،‫الخطوات‬ ‫كافة‬ ‫تنفٌذ‬ ‫من‬ ‫الخوارزمٌة‬ ً‫تنته‬ ‫أن‬ ‫بعد‬ ‫نفسها‬ ‫الوجبة‬ ‫هو‬ ‫سٌكون‬ ‫وجبة‬ ً‫طه‬ ‫خوارزمٌة‬ ‫خرج‬ ً ‫مثال‬ .‫المشكلة‬ ‫حل‬ ‫ٌمثل‬ ‫ا‬ً‫ج‬‫خر‬ ‫ّة‬ٌ‫ومطه‬ ‫جاهزة‬ . ‫ج‬ ‫خوارزمٌة‬ ‫كتابة‬ ‫أردنا‬ ‫إذا‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ‫هذه‬ ‫أركان‬ ‫ستكون‬ ‫صحٌحٌن‬ ‫عددٌن‬ ‫داء‬ ً‫كالتال‬ ‫الخوارزمٌة‬ :  ‫الدخل‬ : ‫جدابهما‬ ‫ناتج‬ ‫حساب‬ ‫المطلوب‬ ‫الصحٌحان‬ ‫العددان‬ ‫هو‬ x, y  ‫الخرج‬ : ‫الجداء‬ ‫ناتج‬ ‫هو‬ z  ‫الخوارزمٌة‬ ‫متن‬ : o ‫الخطوة‬ ٔ ‫ابدأ‬ : o ‫الخطوة‬ ٕ ‫صحٌحة‬ ‫أعداد‬ ‫ثالثة‬ ‫عن‬ ‫بالتصرٌح‬ ‫لم‬ : x ‫و‬ y ‫و‬ z o ‫الخطوة‬ ٖ ‫المدخالت‬ ‫لٌم‬ ‫أدخل‬ : x ‫و‬ y o ‫الخطوة‬ ٗ ‫لٌم‬ ‫اضرب‬ : x ‫بـ‬ y o ‫الخطوة‬ ٘ ً‫ف‬ ‫الضرب‬ ‫ناتج‬ ‫ن‬ّ‫خز‬ : z o ‫الخطوة‬ ٙ ‫لٌمة‬ ‫اعرض‬ : z o ‫الخطوة‬ 7 ‫تولف‬ : ‫الخوارزمٌات‬ ‫حل‬ ‫خطوات‬ : - ‫إجابات‬ ‫على‬ ‫العثور‬ ً‫ف‬ ‫تفكر‬ ‫أن‬ ‫علٌن‬ ‫لحلها‬ ‫خوارزمٌة‬ ‫كتابة‬ ‫وترٌد‬ ‫مشكلة‬ ‫أي‬ ‫تواجهن‬ ‫عندما‬ ‫التالٌة‬ ‫لألسبلة‬ :  ‫من‬ ‫علٌها‬ ‫الحصول‬ ‫إلى‬ ‫أحتاج‬ ً‫الت‬ ‫المعلومات‬ ً‫ه‬ ‫ما‬ ‫أي‬ ‫الخوارزمٌة‬ ‫دخل‬ ‫هو‬ ‫ما‬ ‫المستخدم؟‬  ‫المستخدم؟‬ ‫على‬ ‫لعرضها‬ ‫أحتاج‬ ً‫الت‬ ‫المعلومات‬ ً‫ه‬ ‫ما‬ ‫أي‬ ‫الخوارزمٌة‬ ‫خرج‬ ‫هو‬ ‫ما‬  ‫المشكلة؟‬ ‫هذه‬ ‫لحل‬ ‫المطلوبة‬ ‫الربٌسٌة‬ ‫الخطوات‬ ً‫ه‬ ‫ما‬  ‫الخطوات؟‬ ‫هذه‬ ‫تنفٌذ‬ ‫ترتٌب‬ ‫هو‬ ‫ما‬  ‫ا‬ ‫أو‬ ‫المرارات‬ ً‫ه‬ ‫ما‬ ‫المعلومات؟‬ ‫معالجة‬ ‫عند‬ ‫مراعاتها‬ ‫أحتاج‬ ً‫الت‬ ‫لشروط‬  ‫مرات؟‬ ‫عدة‬ ‫أكررها‬ ‫ألن‬ ‫بحاجة‬ ‫تعلٌمات‬ ‫هنان‬ ‫هل‬
  • 8.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 8 0202 ‫م‬ – 5221 ‫هـ‬ ‫الخوارزمٌات‬ ‫تمثٌل‬ ‫طرق‬ : - ‫طرق‬ ‫بعدة‬ ‫عنها‬ ‫التعبٌر‬ ‫أو‬ ‫الخوارزمٌة‬ ‫ثمثٌل‬ ‫ٌمكنن‬ :  ‫خالل‬ ‫من‬ ‫األولى‬ ‫الطرٌمة‬ ‫المبعثر‬ ‫الكالم‬ ‫دون‬ ‫المحكٌة‬ ‫بلغتن‬ ‫المشكلة‬ ‫حل‬ ‫ٌصف‬ ‫الذي‬ ‫الوصف‬ ً‫ف‬ ‫لواعد‬ ‫أي‬ ‫اتباع‬ .  ‫ٌسمى‬ ‫ما‬ ‫خالل‬ ‫من‬ ‫الثانٌة‬ ‫الطرٌمة‬ ‫الزابفة‬ ‫أو‬ ‫الوهمٌة‬ ‫الشٌفرة‬ pseudocode ً‫وه‬ ‫تلتزم‬ ‫ال‬ ‫لكنها‬ ‫البرمجة‬ ‫لغات‬ ‫كتابتها‬ ‫طرٌمة‬ ً‫ف‬ ً‫تحاك‬ ً‫الت‬ ‫التعلٌمات‬ ‫من‬ ‫مجموعة‬ ‫البرمجة‬ ‫بمواعد‬ ‫بها‬ ‫االلتزام‬ ‫ٌجب‬ ً‫الت‬ ‫فعلٌة‬ ‫برمجٌة‬ ‫شٌفرات‬ ‫تكتب‬ ‫عندما‬ .  ‫تسمى‬ ‫الثالثة‬ ‫الطرٌمة‬ ‫االنسٌابٌة‬ ‫المخططات‬ Flowcharts ‫هو‬ ً‫االنسٌاب‬ ‫والمخطط‬ ، ‫غرض‬ ‫رمز‬ ‫لكل‬ ‫الرموز‬ ‫من‬ ‫مختلفة‬ ‫أنواع‬ ‫باستخدام‬ ‫ٌرسم‬ ‫للخوارزمٌة‬ ً‫رسوم‬ ‫تمثٌل‬ ‫مناسب‬ ‫طرٌمة‬ ‫وٌعد‬ ‫الفهم‬ ‫سهلة‬ ‫صغٌرة‬ ‫مشاكل‬ ‫إلى‬ ‫الكبٌرة‬ ‫المشكلة‬ ‫تمسٌم‬ ً‫ف‬ ‫وهو‬ ‫معٌن‬ ‫ة‬ ‫التمنٌٌن‬ ‫غٌر‬ ‫األشخاص‬ ‫بٌن‬ ‫للتواصل‬ .
  • 9.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 9 0202 ‫م‬ – 5221 ‫هـ‬ ،‫االنسٌابٌة‬ ‫المخططات‬ ‫رسم‬ ‫على‬ ‫تساعدن‬ ‫مساعدة‬ ‫برامج‬ ‫عدة‬ ‫تتوافر‬ ‫مطالعة‬ ‫ٌمكنن‬ ‫وللمزٌد‬ ً‫انسٌاب‬ ‫مخطط‬ ‫رسم‬ ‫كٌفٌة‬ ‫ممال‬ Flowchart ‫باستخدام‬ . PowerPoin ‫الٌومٌة‬ ‫حٌاتنا‬ ً‫ف‬ ‫الخوارزمٌة‬ ‫استخدام‬ ‫على‬ ‫مثال‬ : - ‫منن‬ ‫طلب‬ ‫إذا‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ‫المهوة‬ ‫صنع‬ ‫آلة‬ ‫مع‬ ‫التعامل‬ ‫طرٌمة‬ ‫توضح‬ ‫خوارزمٌة‬ ‫كتابة‬ ً‫كالتال‬ ‫اتباعها‬ ‫علٌن‬ ً‫الت‬ ‫الخطوات‬ ‫ستكون‬ ‫والشاي‬ :  ‫المهوة‬ ‫أم‬ ‫الشاي‬ ‫شرب‬ ‫ٌرٌد‬ ‫الزبون‬ ‫كان‬ ‫إن‬ ‫معرفة‬  ‫الكوب‬ ‫إلى‬ ‫المهوة‬ ‫أو‬ ‫الشاي‬ ‫إضافة‬  ‫للكوب‬ ‫السكر‬ ‫إضافة‬ ‫ٌرٌد‬ ‫المستخدم‬ ‫كان‬ ‫إن‬ ‫معرفة‬  ‫الكوب‬ ‫إلى‬ ‫السكر‬ ‫أضف‬ ‫نعم‬ ‫الجواب‬ ‫كان‬ ‫إذا‬  ‫الكوب‬ ً‫ف‬ ‫الساخن‬ ‫الماء‬ ‫سكب‬ ً‫التال‬ ‫سنكتب‬ ‫الزابفة‬ ‫الشٌفرة‬ ‫باستخدام‬ ‫الخوارزمٌة‬ ‫هذه‬ ‫عن‬ ‫للتعبٌر‬ : START; /Would you like Tea or Coffee?/; if tea {
  • 10.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 01 0202 ‫م‬ – 5221 ‫هـ‬ Add Tea in cup; } else { Add Coffee in cup; } /Would you like Sugar?/; if Sugar { Add Sugar in cup; } Pour boiling water in cup END; ً‫التال‬ ‫المخطط‬ ‫سنرسم‬ ً‫االنسٌاب‬ ‫المخطط‬ ‫باستخدام‬ ‫عنها‬ ‫وللتعبٌر‬ : ‫الخوارزمٌات‬ ‫على‬ ‫أمثلة‬ : - ‫على‬ ‫اإلضافٌة‬ ‫األمثلة‬ ‫بعض‬ ‫نستعرض‬ ‫دعنا‬ ‫الخوارزمٌات‬ ً‫ه‬ ‫ما‬ ‫أفضل‬ ‫بشكل‬ ‫لنفهم‬ ‫رٌاضٌة‬ ‫مسابل‬ ‫لحل‬ ‫خوارزمٌات‬ ‫ونعبر‬ ‫حلها‬ ‫وخطوات‬ ‫المختلفة‬ ‫أركانها‬ ‫على‬ ‫ونتعرف‬ ‫بسٌطة‬ ‫المختلفة‬ ‫بالطرق‬ ‫عنها‬ .
  • 11.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 00 0202 ‫م‬ – 5221 ‫هـ‬ ‫عدد‬ ‫مضروب‬ ‫لٌمة‬ ‫لحساب‬ ‫خوارزمٌة‬ ‫المضروب‬ ‫الرٌاضٌات‬ ً‫ف‬ factorial ‫الصحٌح‬ ‫العدد‬ ً‫عامل‬ ‫أو‬ n ً‫التال‬ ‫بالشكل‬ ‫عنه‬ ‫ٌعبر‬ ‫الذي‬ n! ‫من‬ ‫األصغر‬ ‫أو‬ ‫المساوٌة‬ ‫الطبٌعٌة‬ ‫األعداد‬ ‫كل‬ ‫جداء‬ ‫هو‬ n ‫الصفر‬ ‫عدا‬ ‫ما‬ ‫خوارزمٌة‬ ‫ولكتابة‬ ‫التالٌة‬ ‫الخطوات‬ ‫اتباع‬ ‫علٌنا‬ ‫الرٌاضٌة‬ ‫المسألة‬ ‫هذه‬ ‫تحل‬ :  ‫الدخل‬ : ‫مضروبه‬ ‫حساب‬ ‫المطلوب‬ ‫الصحٌح‬ ‫العدد‬ ‫هو‬ n.  ‫الخرج‬ : ‫المضروب‬ ‫ناتج‬ ‫هو‬ factorial  ‫المتن‬ : o ‫الخطوة‬ ٔ ‫العدد‬ ‫إدخال‬ : n ‫مضروبه‬ ‫حساب‬ ‫المراد‬ o ‫الخطوة‬ ٕ ‫ولٌكن‬ ‫مساعد‬ ‫متغٌر‬ ‫تعرٌف‬ : i ‫عن‬ ‫عبارة‬ ‫وهو‬ ‫ٌأخذ‬ ‫صحٌح‬ ‫عدد‬ ‫المطلوبة‬ ‫المٌمة‬ ‫حساب‬ ‫على‬ ‫وٌساعدنا‬ ‫نفسه‬ ‫والعدد‬ ‫الواحد‬ ‫بٌن‬ ‫متغٌرة‬ ‫لٌمة‬ . o ‫الخطوة‬ ٖ ‫المتغٌر‬ ‫تهٌبة‬ : factorial ،‫للمضروب‬ ‫المؤلتة‬ ‫المٌمة‬ ‫ٌمثل‬ ‫الذي‬ ‫والمتغٌر‬ i ‫بالمٌمة‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫أثناء‬ ‫فٌها‬ ‫نحن‬ ً‫الت‬ ‫المرحلة‬ ‫ٌمثل‬ ‫الذي‬ ‫نجعل‬ ‫أي‬ ‫واحد‬ factorial = 1 ‫و‬ i = 1 o ‫الخطوة‬ ٗ ‫المتغٌر‬ ‫لٌم‬ ‫تعٌٌن‬ ‫إعادة‬ : factorial ‫بالمٌمة‬ factorial*i ‫والمتغٌر‬ ‫بالمٌمة‬ i+1 o ‫الخطوة‬ ٘ ‫الخطوة‬ ‫كرر‬ : ٖ ‫المتغٌر‬ ‫لٌمة‬ ‫تصبح‬ ‫حتى‬ i ‫من‬ ‫ا‬ً‫م‬‫تما‬ ‫أكبر‬ n o ‫الخطوة‬ ٙ ‫لٌمة‬ ‫وإعادة‬ ‫الخوارزمٌة‬ ‫بإٌماف‬ ‫لم‬ : factorial ‫مضروب‬ ‫تمثل‬ ً‫الت‬ ‫العدد‬ n ‫توضح‬ ‫التالٌة‬ ‫الصورة‬ ‫عدد‬ ‫مضروب‬ ‫حساب‬ ‫خوارزمٌة‬ ‫لحل‬ ً‫االنسٌاب‬ ‫المخطط‬ ‫رسم‬ ‫طرٌمة‬ : ‫أسفل‬ ‫التعلٌمات‬ ‫لسم‬ ً‫ف‬ ‫إٌاها‬ ‫شاركنا‬ ‫المسألة؟‬ ‫هذه‬ ‫لحل‬ ‫أخرى‬ ‫أسالٌب‬ ‫أو‬ ‫ا‬ً‫ل‬‫طر‬ ‫تعرف‬ ‫هل‬ ‫الممال‬ . ‫أعداد‬ ‫ثالثة‬ ‫بٌن‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫على‬ ‫للعثور‬ ‫خوارزمٌة‬
  • 12.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 02 0202 ‫م‬ – 5221 ‫هـ‬ ‫طرٌمة‬ ‫أو‬ ‫خوارزمٌة‬ ‫من‬ ‫بأكثر‬ ‫المسألة‬ ‫هذه‬ ‫حل‬ ‫سنكتب‬ : ‫طرٌمة‬ ٔ :  ‫الدخل‬ : 3 ‫أرلام‬ a ‫و‬ b ‫و‬ c  ‫الخرج‬ : ‫بٌنها‬ ‫من‬ ‫األكبر‬ ‫العدد‬ a ‫أو‬ b ‫أو‬ c  ‫المتن‬ : o ‫الخطوة‬ ٔ ‫المتغٌرات‬ ً‫ف‬ ‫وخزنها‬ ‫الثالثة‬ ‫األرلام‬ ‫أدخل‬ : a ‫و‬ b ‫و‬ c ‫على‬ ً‫التوال‬ . o ‫الخطوة‬ ٕ ‫األول‬ ‫الرلم‬ ‫كون‬ ‫من‬ ‫تحمك‬ : a ً‫الثان‬ ‫الرلم‬ ‫من‬ ‫أكبر‬ b ‫الثالث‬ ‫و‬ c ‫أن‬ ‫اطبع‬ ‫عندها‬ a ‫التنفٌذ‬ ً‫وأنه‬ ‫الكل‬ ‫بٌن‬ ‫األكبر‬ ‫العدد‬ ‫هو‬ o ‫الخطوة‬ ٖ ‫كون‬ ‫من‬ ‫تحمك‬ : b ‫من‬ ‫أكبر‬ a ‫و‬ c ‫أن‬ ‫اطبع‬ ‫عندها‬ b ‫العدد‬ ‫هو‬ ‫التنفٌذ‬ ً‫وأنه‬ ‫الكل‬ ‫بٌن‬ ‫األكبر‬ o ‫الخطوة‬ ٗ ‫كون‬ ‫من‬ ‫تحمك‬ : c ‫من‬ ‫أكبر‬ a ‫و‬ b ‫أن‬ ‫اطبع‬ ‫عندها‬ c ‫العدد‬ ‫هو‬ ‫التنفٌذ‬ ً‫وأنه‬ ‫الكل‬ ‫بٌن‬ ‫األكبر‬ ‫عن‬ ‫للتعبٌر‬ ‫الزابف‬ ‫الكود‬ ‫بٌن‬ ‫عدد‬ ‫أكبر‬ ‫خوارزمٌة‬ ٖ ‫أعداد‬ : Step-1 Start Step-2 Read three numbers a,b,c Step-3 If a>b then go to step-5 Step-4 IF b>c THEN print b is largest ELSE print c is largest ENDIF GO TO Step-6 Step-5 IF a>c THEN print a is largest ELSE print c is largest ENDIF Step-6 Stop ً‫ٌل‬ ‫كما‬ ‫هو‬ ‫الخوارزمٌة‬ ‫عن‬ ‫للتعبٌر‬ ً‫االنسٌاب‬ ‫والمخطط‬ :
  • 13.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 03 0202 ‫م‬ – 5221 ‫هـ‬ ‫العدد‬ ‫حول‬ ‫لمرار‬ ‫نصل‬ ‫حتى‬ ‫الشروط‬ ‫من‬ ‫الكثٌر‬ ‫اختبار‬ ‫تتطلب‬ ‫أعاله‬ ‫الطرٌمة‬ ‫أن‬ ‫الحظت‬ ‫لعلن‬ ‫أبسط‬ ‫بطرٌمة‬ ‫حلها‬ ‫نحاول‬ ‫دعنا‬ ،‫الثالثة‬ ‫األعداد‬ ‫بٌن‬ ‫من‬ ‫األكبر‬ . ‫أعداد‬ ‫ثالثة‬ ‫ممارنة‬ ‫خوارزمٌة‬ ‫فإن‬ ‫تالحظ‬ ‫كما‬ ‫بٌن‬ ‫من‬ ‫األكبر‬ ‫العدد‬ ‫حول‬ ‫لمرار‬ ‫نصل‬ ‫حتى‬ ‫لدٌنا‬ ‫كان‬ ‫لو‬ ‫ماذا‬ ‫ولكن‬ ،‫عدد‬ ‫كل‬ ‫على‬ ‫مرتٌن‬ ‫والمرور‬ ‫خطوتٌن‬ ‫إجراء‬ ‫تطلبت‬ ‫الثالثة‬ ‫األعداد‬ ٔٓ ‫لذا‬ ‫وتعمده‬ ‫الحل‬ ‫زمن‬ ‫وسٌزاد‬ ‫األعداد‬ ‫على‬ ‫المرور‬ ‫ومرات‬ ‫الخطوات‬ ‫ستزداد‬ ‫أكثر‬ ‫أو‬ ‫أعداد‬ ‫مرة‬ ‫المرور‬ ‫من‬ ‫تمكننا‬ ‫أفضل‬ ‫بطرٌمة‬ ‫نفكر‬ ‫أن‬ ‫األفضل‬ ‫من‬ ‫العدد‬ ‫ومعرفة‬ ‫األعداد‬ ‫على‬ ‫واحدة‬ ‫بٌنها‬ ‫من‬ ‫األكبر‬ . ‫أول‬ ‫أن‬ ‫ونعتبر‬ ‫اﻵخر‬ ‫تلو‬ ‫ًا‬‫د‬‫واح‬ ‫نمرأها‬ ‫ثم‬ ‫المصفوفة‬ ‫مثل‬ ‫واحدة‬ ‫بنٌة‬ ً‫ف‬ ‫األعداد‬ ‫نخزن‬ ‫أن‬ ‫ٌمكن‬ ‫كان‬ ‫فإن‬ ‫مباشرة‬ ‫لبله‬ ‫بالذي‬ ‫نمارنه‬ ‫ًا‬‫د‬ٌ‫جد‬ ‫ًا‬‫د‬‫عد‬ ‫لرأنا‬ ‫وكلما‬ ‫األعداد‬ ‫كل‬ ‫بٌن‬ ‫من‬ ‫األكبر‬ ‫هو‬ ‫عدد‬ ‫كا‬ ‫وإن‬ ‫بٌنهما‬ ‫نبدل‬ ‫منه‬ ‫أكبر‬ ‫الطرٌمة‬ ‫هذه‬ ‫لنطبك‬ .‫إجراء‬ ‫بأي‬ ‫نموم‬ ‫ال‬ ‫ٌساوٌه‬ ‫أو‬ ‫منه‬ ‫أصغر‬ ‫ن‬ ‫أعداد‬ ‫ثالثة‬ ‫بٌن‬ ‫من‬ ‫األكبر‬ ‫العدد‬ ‫إلٌجاد‬ ‫طرٌمة‬ ٕ :
  • 14.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 04 0202 ‫م‬ – 5221 ‫هـ‬  ‫الدخل‬ : 3 ‫أرلام‬ a ‫و‬ b ‫و‬ c  ‫الخرج‬ : max ‫األكبر‬ ‫العدد‬ ‫ٌمثل‬ ‫الذي‬  ‫المتن‬ : o ‫الخطوة‬ ٔ ً‫ف‬ ‫وخزنها‬ ‫الثالثة‬ ‫األعداد‬ ‫أدخل‬ : a ‫و‬ b ‫و‬ c ً‫التوال‬ ‫على‬ o ‫الخطوة‬ ٖ ‫افترض‬ : ‫األول‬ ‫العدد‬ ‫أن‬ a ‫األكبر‬ ‫هو‬ max = a o ‫الخطوة‬ ٗ ً‫الثان‬ ‫العدد‬ ‫كان‬ ‫إذا‬ : b ‫من‬ ‫أكبر‬ max ‫اجعل‬ max = b o ‫الخطوة‬ ٘ ‫الثالث‬ ‫العدد‬ ‫كان‬ ‫إذا‬ : c ‫من‬ ‫أكبر‬ ‫من‬ ‫أكبر‬ max ‫اجعل‬ max = c o ‫الخطوة‬ ٙ ‫لٌمة‬ ‫اعرض‬ : max ‫بٌن‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫إلٌجاد‬ ‫الخوارزمٌة‬ ‫هذه‬ ‫عن‬ ‫للتعبٌر‬ ‫الزابف‬ ‫الكود‬ ٖ ‫أعداد‬ : Step-1 Start Step-2 Read three numbers: a,b,c Step-3 max = a Step-4 IF b > max THEN max = b ENDIF Step-5 IF c > max THEN max = c ENDIF Step-6 print max Step-7 Stop ً‫ٌل‬ ‫كما‬ ‫هو‬ ‫الخوارزمٌة‬ ‫عن‬ ‫للتعبٌر‬ ً‫االنسٌاب‬ ‫والمخطط‬ :
  • 15.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 05 0202 ‫م‬ – 5221 ‫هـ‬ ‫التباس‬ ً‫ة‬‫عاد‬ ‫البشر‬ ‫نحن‬ ‫نتبعه‬ ‫ما‬ ً‫ه‬ ‫الطرٌمة‬ ‫هذه‬ ‫أعداد‬ ‫مجموعة‬ ‫من‬ ‫رلم‬ ‫أكبر‬ ‫معرفة‬ ‫منن‬ ‫طلب‬ ‫فإن‬ ‫ذاكرتن‬ ً‫ف‬ ‫خزن‬ُ‫ت‬( ‫وتحفظ‬ ‫النهاٌة‬ ‫وحتى‬ ‫البداٌة‬ ‫من‬ ‫علٌها‬ ‫فستمر‬ ) ‫معن‬ ‫ٌمر‬ ‫الذي‬ ‫األكبر‬ ‫العدد‬ ‫النهاٌة‬ ً‫ف‬ ‫لتموله‬ . ‫حولها‬ ‫لنتنالش‬ ‫إٌاها‬ ‫تشاركنا‬ ‫أن‬ ‫ٌمكن‬ ‫المسألة؟‬ ‫هذه‬ ‫لحل‬ ‫أفضل‬ ‫أخرى‬ ‫خوارزمٌة‬ ‫لدٌن‬ ‫هل‬ . ‫و‬ ‫مرة‬ ‫مررنا‬ ‫فمد‬ ‫تالحظ‬ ‫كما‬ ‫لدٌنا‬ ‫كان‬ ‫لو‬ ‫ٌختلف‬ ‫لن‬ ‫وهذا‬ ،‫أكبر‬ ‫أٌها‬ ‫وعرفنا‬ ‫األعداد‬ ‫على‬ ‫احدة‬ ‫تحوي‬ ‫لابمة‬ ٔٓٓ ‫تعمٌد‬ ‫أو‬ ‫الخوارزمٌة‬ ‫بكفاءة‬ ‫ٌسمى‬ ‫ببساطته‬ ‫المفهوم‬ ‫هذا‬ ،‫أكثر‬ ‫أو‬ ‫عدد‬ ‫برمز‬ ‫إلٌه‬ ‫ٌشار‬ ‫والذي‬ ‫الخوارزمٌة‬ Big O ‫ٌتناول‬ ‫موضوع‬ ‫أي‬ ً‫ف‬ ‫ا‬ً‫م‬‫دو‬ ‫وستجده‬ ‫أ‬ ‫الخوارزمٌات‬ ‫كتابة‬ ‫شروط‬ ‫من‬ ‫ألن‬ ،‫الخوارزمٌات‬ ‫ا‬ً‫ن‬‫ممك‬ ‫ًا‬‫د‬ٌ‫تعم‬ ‫وألل‬ ‫كفاءة‬ ‫ذات‬ ‫تكون‬ ‫ن‬ . ‫وكٌفٌة‬ ‫بكفاءة‬ ‫بعضها‬ ‫عن‬ ‫تتمٌز‬ ‫ولكن‬ ‫نفسه‬ ‫الصحٌح‬ ‫الخرج‬ ‫النهاٌة‬ ً‫ف‬ ً‫تعط‬ ‫الخوارزمٌات‬ ‫فكل‬ ‫دراسة‬ ‫وضرورة‬ ً‫المنطم‬ ‫التفكٌر‬ ‫أهمٌة‬ ‫تبرز‬ ‫وهنا‬ ،‫الصحٌح‬ ‫للخرج‬ ‫الوصول‬ ‫وسرعة‬ ‫و‬ ‫الخوارزمٌات‬ ‫المعطٌات‬ ‫بنى‬ ‫أي‬ ‫لحل‬ ‫كفاءة‬ ‫األكثر‬ ‫الحل‬ ‫لمعرفة‬ ‫تواجهها‬ ‫برمجٌة‬ ‫مسألة‬ ‫الخوارزمٌات‬ ‫"تحلٌل‬ ‫فمرة‬ ً‫ف‬ ‫ًا‬ٌ‫تال‬ ‫بالتفصٌل‬ ‫الموضوع‬ ‫هذا‬ ‫عن‬ ‫وسنتحدث‬ ". ً‫حاسوب‬ ‫برنامج‬ ‫إلى‬ ‫الخوارزمٌة‬ ‫تحوٌل‬ : - ‫لالستخدام‬ ‫لابلة‬ ‫غٌر‬ ‫الوالع‬ ً‫ف‬ ‫لكنها‬ ‫كبشر‬ ‫لنا‬ ‫وواضحة‬ ‫مفهومة‬ ‫الخوارزمٌة‬ ‫تمثٌل‬ ‫طرق‬ ‫إن‬ ‫خطط‬ ‫الخوارزمٌات‬ ّ‫ألن‬ ،‫الحاسوب‬ ‫على‬ ‫والتطبٌك‬ ‫المشاكل‬ ‫لحل‬ ‫دة‬ّ‫ومجر‬ ‫عامة‬ . ‫بإحدى‬ ‫عنها‬ ‫التعبٌر‬ ‫أو‬ ‫ترجمتها‬ ‫علٌنا‬ ‫فسٌكون‬ ،‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫الخوارزمٌة‬ ‫استخدام‬ ‫أردنا‬ ‫فإن‬ ‫البرمجة‬ ‫لغات‬ ‫تحمٌك‬ ‫ى‬ّ‫م‬‫س‬ُ‫ت‬ ‫العملٌة‬ ‫هذه‬ ،‫المطلوبة‬ ‫النتابج‬ ‫لنا‬ ‫وٌعٌد‬ ‫الحاسوب‬ ‫ٌفهمها‬ ً‫ك‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫أو‬ ‫الخوارزمٌة‬ implementation ٌ‫تحو‬ ‫عن‬ ‫وٌنتج‬ ‫إحدى‬ ‫إلى‬ ‫الخوارزمٌة‬ ‫ل‬ ‫للتنفٌذ‬ ‫لابلة‬ ‫برمجٌة‬ ‫شٌفرة‬ ‫البرمجة‬ ‫لغات‬ execution ‫الحاسوب‬ ‫على‬ . ‫من‬ ‫عدد‬ ‫أكبر‬ ‫إٌجاد‬ ‫تحاول‬ ً‫والت‬ ‫ا‬ً‫ف‬‫آن‬ ‫ذكرناها‬ ً‫الت‬ ‫الخوارزمٌة‬ ‫سنحول‬ :‫ذلن‬ ‫على‬ ً ‫مثاال‬ ‫لنضرب‬ ‫الحاسوب‬ ‫على‬ ‫تنفٌذها‬ ‫لنا‬ ‫ى‬ّ‫ن‬‫ٌتس‬ ‫حتى‬ ‫باٌثون‬ ‫بلغة‬ ‫مكتوب‬ ‫برنامج‬ ‫إلى‬ ‫أعداد‬ ‫ثالثة‬ ‫بٌن‬ . ‫باٌثون‬ ‫لغة‬ ً‫ف‬ ‫أعداد‬ ‫ثالثة‬ ‫بٌن‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫إٌجاد‬ ‫خوارزمٌة‬ ‫تنفٌذ‬ ‫أعداد‬ ‫ثالثة‬ ‫بٌن‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫إلٌجاد‬ ‫باٌثون‬ ‫برنامج‬ a = int(input('a= ')) b = int(input('b= ')) c = int(input('c= ')) max = a if b > max : max = b if c > max : max = c print(max, " ‫الع‬ ‫هو‬ ‫األكبر‬ ‫دد‬ ")
  • 16.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 06 0202 ‫م‬ – 5221 ‫هـ‬ ‫بالطبع‬ ‫ٌمكنن‬ ‫كما‬ .‫متولع‬ ‫هو‬ ‫كما‬ ‫وستعمل‬ ‫حاسوب‬ ّ‫ي‬‫أ‬ ‫على‬ ‫الشٌفرة‬ ‫هذه‬ ‫تنفٌذ‬ ‫اﻵن‬ ‫ٌمكنن‬ ‫مثل‬ ‫ترٌدها‬ ‫أخرى‬ ‫برمجة‬ ‫لغة‬ ّ‫ي‬‫بأ‬ ‫الخوارزمٌة‬ ‫تحمٌك‬ C ‫أو‬ C++‎ ‫أو‬ ‫سكرٌبت‬ ‫جافا‬ ‫أو‬ ‫جافا‬ ‫أو‬ R … ‫إلخ‬ . ‫ٌطلب‬ ً‫حاسوب‬ ‫برنامج‬ ‫إلى‬ ‫السابمة‬ ‫الخوارزمٌة‬ ‫تحوٌل‬ ‫تجرب‬ ‫أن‬ ‫رأٌن‬ ‫ما‬ ‫تمرٌن‬ ‫المستخدم‬ ‫من‬ ‫مثل‬ ‫فراغات‬ ‫بٌنها‬ ‫تفصل‬ ‫أعداد‬ ‫مجموعة‬ ‫إدخال‬ ٗ 9 4 7 ٔٓ ‫الخوارزمٌة‬ ‫بتلن‬ ‫البرنامج‬ ‫لٌحللها‬ ‫التكرار‬ ‫حلمات‬ ‫استعمال‬ ‫ستحاول‬ :‫(مساعدة‬ ‫بٌنها‬ ‫من‬ ‫األكبر‬ ‫العدد‬ ً‫وٌعط‬ loops) ‫الخوارزمٌات‬ ‫استخدام‬ ‫مجاالت‬ : - ‫علماء‬ ‫لبل‬ ‫من‬ ‫السنوات‬ ‫آالف‬ ‫طوال‬ ‫ستخدم‬ُ‫ت‬ ‫الخوارزمٌات‬ ‫كانت‬ ‫المعادالت‬ ‫لحل‬ ‫الرٌاضٌات‬ ً‫ء‬‫ابتدا‬ ‫الرٌاضٌات‬ ‫من‬ ‫ٌتجزأ‬ ‫ال‬ ‫جزء‬ ‫فالخوارزمٌات‬ .‫هذا‬ ‫ٌومنا‬ ‫إلى‬ ‫تزال‬ ‫وما‬ ‫الرٌاضٌة‬ ‫والمسابل‬ ‫المنطمٌة‬ ‫البراهٌن‬ ‫كتابة‬ ‫وحتى‬ ،‫الجبرٌة‬ ‫المعادالت‬ ‫حل‬ ‫من‬ . ‫فالحاسوب‬ ،‫الحاسب‬ ‫وعلوم‬ ‫البرمجة‬ ‫مجال‬ ً‫ف‬ ‫واسع‬ ‫نطاق‬ ‫على‬ ‫الٌوم‬ ‫الخوارزمٌات‬ ‫وتستخدم‬ ‫سوى‬ ‫لٌس‬ ‫وٌحللونه‬ ‫المطلوب‬ ‫ٌفهمون‬ ‫الذٌن‬ ،‫البشر‬ ‫عكس‬ ‫على‬ ‫وسرعة‬ ‫بكفاءة‬ ‫األوامر‬ ‫تنفذ‬ ‫آلة‬ ‫تبسٌط‬ ‫إلى‬ ‫تحتاج‬ ،‫لذلن‬ .‫الحاسوب‬ ‫بواسطة‬ ‫ٌنفذونها‬ ‫ثم‬ ‫الخوارزمٌات‬ ‫لوضع‬ ‫بأدمغتهم‬ ‫وٌفكرون‬ ‫ممكن‬ ‫أداء‬ ‫وبأفضل‬ ‫بحذافٌرها‬ ‫لن‬ ‫لٌنفذها‬ ‫للحاسوب‬ ‫خوارزمٌة‬ ‫ووضع‬ . ‫التش‬ ‫وأنظمة‬ ‫والتطبٌمات‬ ‫البرامج‬ ‫وكل‬ ‫أجل‬ ‫من‬ ‫وتستخدمها‬ ‫الخوارزمٌات‬ ‫على‬ ‫تعتمد‬ ‫غٌل‬ ‫معالجة‬ ‫البٌانات‬ ‫مجاالت‬ ‫عدة‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫تستخدم‬ ‫كما‬ ‫العمل‬ ‫مشكالت‬ ّ‫ل‬‫وح‬ ‫الحسابات‬ ‫وإجراء‬ ً‫ف‬ ‫الٌوم‬ ‫تطبك‬ ً‫وه‬ ‫الحٌاة‬ ً‫مناح‬ ‫من‬ ‫وغٌرها‬ ‫وااللتصاد‬ ‫اللغات‬ ‫وتحلٌل‬ ‫الفٌزٌاء‬ ‫مثل‬ ‫أخرى‬ ‫األمثلة‬ ‫أبرز‬ ‫ومن‬ ‫حولنا‬ ‫من‬ ‫نستخدمه‬ ‫شًء‬ ‫كل‬ ‫حٌاتنا‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫استخدام‬ ‫مجاالت‬ ‫على‬ ‫نذكر‬ ‫الٌومٌة‬ :  ً‫االجتماع‬ ‫التواصل‬ ‫موالع‬ ‫على‬ ‫تراه‬ ‫فٌما‬ ‫تتحكم‬ ً‫الت‬ ً‫االجتماع‬ ‫التواصل‬ ‫خوارزمٌات‬ ‫خاصتن‬  ‫المستخدمون‬ ‫سٌكتبه‬ ‫بما‬ ‫وتتنبأ‬ ‫البحث‬ ‫عملٌات‬ ‫تحسن‬ ً‫الت‬ ‫البحث‬ ‫محركات‬ ‫خوارزمٌات‬ .  ‫ا‬ ‫تمنٌات‬ ‫باستخدام‬ ‫الجرابم‬ ‫كشف‬ ‫خوارزمٌات‬ ‫التنبؤٌة‬ ‫الخرابط‬ ‫ورسم‬ ‫الوجه‬ ‫على‬ ‫لتعرف‬ ‫لمنعها‬ ‫اإلجراءات‬ ‫واتخاذ‬ ‫الجرابم‬ ‫لتولع‬ .  ‫ستخدم‬ُ‫ت‬‫و‬ ‫مفهوم‬ ‫غٌر‬ ‫نص‬ ‫إلى‬ ‫مفهوم‬ ‫نص‬ ‫بتحوٌل‬ ‫تموم‬ ً‫الت‬ ‫التشفٌر‬ ‫خوارزمٌات‬ ‫إلٌهم‬ ‫وجهت‬ ‫الذٌن‬ ‫األشخاص‬ ّ ‫إال‬ ‫ٌفهمها‬ ‫ال‬ ‫بحٌث‬ ‫المهمة‬ ‫البٌانات‬ ‫لحماٌة‬ .  ‫الح‬ ‫ودرجة‬ ‫الطمس‬ ‫بحالة‬ ‫التنبؤ‬ ‫خوارزمٌات‬ ً‫ف‬ ‫تفٌد‬ ً‫وه‬ ‫السابمة‬ ‫البٌانات‬ ‫بمساعدة‬ ‫رارة‬ ‫والحروب‬ ‫واالتصاالت‬ ‫والطٌران‬ ‫الزراعة‬ ‫أهمها‬ ‫مجاالت‬ ‫عدة‬ .  ‫طرٌمة‬ ‫بأفضل‬ ‫وجدولتها‬ ‫الحافالت‬ ‫وصول‬ ‫مواعٌد‬ ‫تحدٌد‬ ‫خوارزمٌات‬ .  ‫وجهتم‬ ‫على‬ ‫العثور‬ ‫على‬ ‫السابمٌن‬ ‫لمساعدة‬ ‫المتاحة‬ ‫السٌارات‬ ‫موالف‬ ‫تحدٌد‬ ‫خوارزمٌات‬ ‫وسهولة‬ ‫بسرعة‬ .  ٌ‫خوارزم‬ ‫طرٌك‬ ‫أفضل‬ ‫إلى‬ ‫المركبات‬ ‫توجٌه‬ ‫ات‬ .  ‫الصوارٌخ‬ ‫مسارات‬ ‫تعدٌل‬ ‫خوارزمٌات‬ . ‫تلعب‬ ً‫الت‬ ‫شابه‬ ‫وما‬ ‫واإلعالم‬ ‫والعلوم‬ ‫االلتصاد‬ ً‫ف‬ ‫المختلفة‬ ‫الحٌاة‬ ‫مجاالت‬ ‫من‬ ‫الكثٌر‬ ‫وغٌرها‬ ‫ملٌون‬ ‫لدرها‬ ‫جابزة‬ ‫نٌتفلٌكس‬ ‫عرضت‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ،‫ًا‬ٌ‫وحٌو‬ ً ‫فعاال‬ ‫ا‬ً‫دور‬ ‫الخوارزمٌات‬ ‫فٌها‬ ‫ٌطو‬ ‫لمن‬ ‫دوالر‬ ‫وٌجعلها‬ ‫الزوار‬ ‫على‬ ‫والمسلسالت‬ ‫األفالم‬ ‫التراح‬ ً‫ف‬ ‫المستخدمة‬ ‫خوارزمٌتها‬ ‫ر‬ ‫بنسبة‬ ‫أفضل‬ 10%.
  • 17.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 07 0202 ‫م‬ – 5221 ‫هـ‬ ‫الجٌدة‬ ‫الخوارزمٌة‬ ‫مواصفات‬ : - ‫جٌدة؟‬ ‫الخوارزمٌة‬ ‫ٌجعل‬ ‫الذي‬ ‫وما‬ ‫كذلن؟‬ ‫لٌست‬ ‫وأخرى‬ ‫جٌدة‬ ‫خوارزمٌة‬ ‫هنان‬ ‫وهل‬ ‫تتساءل‬ ‫لد‬ ‫فكذ‬ ،‫تنجح‬ ‫وال‬ ‫سٌبة‬ ‫طبخة‬ ‫وصفات‬ ‫هنان‬ ّ‫أن‬ ‫فكما‬ ‫نعم‬ ‫هو‬ ‫والجواب‬ ‫سٌبة‬ ‫خوارزمٌات‬ ‫هنان‬ ‫لن‬ ،‫خوارزمٌة‬ ‫والتعلٌمات‬ ‫الخطوات‬ ‫من‬ ‫متتابعة‬ ‫سلسلة‬ ‫كل‬ ‫فلٌست‬ ،‫للتطبٌك‬ ‫تصلح‬ ‫وال‬ ‫عملٌة‬ ‫وغٌر‬ ‫مثل‬ ‫للتطبٌك‬ ‫ولابلة‬ ‫عملٌة‬ ‫تجعلها‬ ‫خاصة‬ ‫شروط‬ ‫فٌها‬ ‫تتوفر‬ ‫أن‬ ‫البد‬ ‫بل‬ :  ‫الوضوح‬ : ‫وال‬ ‫ومفهومة‬ ‫واضحة‬ ‫الخوارزمٌة‬ ‫خطوات‬ ‫من‬ ‫خطوة‬ ‫كل‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬ ‫فٌها‬ ‫لبس‬ .  ‫المحدودٌة‬ : ً‫ف‬ ‫ذ‬ّ‫ف‬‫ن‬ُ‫ت‬‫و‬ ،‫منتهٌة‬ ‫خطواتها‬ ‫تكون‬ ‫أن‬ ‫أي‬ ،‫محدودة‬ ‫الخوارزمٌة‬ ‫تكون‬ ‫أن‬ ‫ٌجب‬ ‫أن‬ ‫الخطوات‬ ‫إحدى‬ ‫بإمكان‬ ‫كان‬ ‫أو‬ ،‫منته‬ ‫غٌر‬ ‫الخطوات‬ ‫عدد‬ ‫كان‬ ‫فإن‬ .‫منتهٌة‬ ‫زمنٌة‬ ‫مدة‬ ‫خوارزمٌة‬ ‫لٌست‬ ‫ها‬ّ‫ن‬‫فإ‬ ،‫منتهٌة‬ ‫ال‬ ‫مدة‬ ‫تستغرق‬ .  ‫والوالعٌة‬ ‫البساطة‬ : ‫للت‬ ‫لابلة‬ ‫الخوارزمٌة‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬ ‫والتمنٌات‬ ‫بالموارد‬ ‫طبٌك‬ ‫غامضة‬ ‫أو‬ ‫مستمبلٌة‬ ‫تمنٌة‬ ‫على‬ ‫تعتمد‬ ‫أن‬ ً‫ٌنبغ‬ ‫وال‬ ،‫المتاحة‬ .  ‫التطبٌك‬ ‫لابلٌة‬ : ‫الخوارزمٌة‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬ ‫ال‬ ‫أي‬ ‫البرمجة‬ ‫لغات‬ ‫عن‬ ‫االستماللٌة‬ ً‫ٌعن‬ ‫العمل‬ ‫على‬ ‫تركز‬ ‫بحٌث‬ ‫ة‬ّ‫م‬‫وعا‬ ‫مجردة‬ ‫تكون‬ ‫أن‬ ‫وٌجب‬ ،‫محددة‬ ‫برمجة‬ ‫بلغة‬ ‫مرتبطة‬ ً ‫بدال‬ ‫للبرنامج‬ ً‫األساس‬ ‫ٌمكن‬ ‫وبعدها‬ ‫معٌنة‬ ‫برمجة‬ ‫لغة‬ ‫خصابص‬ ‫على‬ ‫التركٌز‬ ‫من‬ ‫برمجة‬ ‫لغة‬ ‫أي‬ ‫عبر‬ ‫تطبٌمها‬ .  ‫النتابج‬ ‫صحة‬ : ً‫ف‬ ‫أخطاء‬ ‫دون‬ ‫منها‬ ‫المطلوبة‬ ‫المهمة‬ ‫بتنفٌذ‬ ‫الخوارزمٌة‬ ‫تموم‬ ‫أن‬ ‫ٌجب‬ ‫النتابج‬ ً‫ف‬ ‫دلة‬ ‫عدم‬ ‫أو‬ ‫التنفٌذ‬ .  ‫والفعالٌة‬ ‫الكفاءة‬ : ‫بأ‬ ‫المشكلة‬ ‫لحل‬ ‫الطرق‬ ‫أفضل‬ ‫الخوارزمٌة‬ ‫تستخدم‬ ‫أن‬ ً‫ٌنبغ‬ ‫ولت‬ ‫سرع‬ ‫بالتعمٌد‬ ‫ٌعرف‬ ‫ما‬ ‫أو‬ ‫ذاكرة‬ ‫مساحة‬ ‫وألل‬ ‫للخوارزمٌة‬ ً‫الزمان‬ ‫بالتعمٌد‬ ‫ٌعرف‬ ‫ما‬ ‫أو‬ ‫تنفٌذ‬ ‫للخوارزمٌة‬ ً‫المكان‬ . ‫الخوارزمٌات؟‬ ‫لتعلم‬ ‫الرٌاضٌات‬ ‫معرفة‬ ‫إلى‬ ‫أحتاج‬ ‫هل‬ ‫مشاكل‬ ‫لحل‬ ‫ا‬ً‫س‬‫أسا‬ ‫ستخدم‬ُ‫ت‬ ‫فالخوارزمٌات‬ ، ‫أكثر‬ ً‫إجابت‬ ‫أوضح‬ ً‫وك‬ ،‫وال‬ ‫نعم‬ ‫هو‬ ‫الجواب‬ ‫متوس‬ ‫مثل‬ ،‫حسابٌة‬ ‫طرٌمة‬ ‫أسهل‬ ‫أو‬ ،‫شعبة‬ ً‫ف‬ ‫نمطتٌن‬ ‫بٌن‬ ‫مسار‬ ‫ألصر‬ ‫أو‬ ،‫المٌم‬ ‫من‬ ‫مجموعة‬ ‫ط‬ ‫من‬ ‫لدر‬ ‫على‬ ‫تنطوي‬ ‫المشاكل‬ ‫هذه‬ ‫كل‬ .‫مصفوفة‬ ‫عناصر‬ ‫ترتٌب‬ ‫أو‬ ،ً‫هندس‬ ‫شكل‬ ‫لرسم‬ ‫نعم‬ ‫هو‬ ‫فالجواب‬ ‫لذلن‬ ،‫األساسٌة‬ ‫الرٌاضٌات‬ . ‫الرٌاض‬ ً‫ف‬ ‫جامعٌة‬ ‫شهادة‬ ‫لن‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬ ‫ه‬ّ‫ن‬‫أ‬ ‫الرٌاضٌات‬ ‫بمعرفة‬ ‫تمصد‬ ‫كنت‬ ‫إن‬ ‫لكن‬ ‫أو‬ ،‫ٌات‬ ‫تتطلب‬ ‫ال‬ ‫الخوارزمٌات‬ ّ‫ألن‬ ‫ال‬ ‫سٌكون‬ ‫فالجواب‬ ،‫بها‬ ‫متوسطة‬ ‫حتى‬ ‫أو‬ ‫عمٌمة‬ ‫معرفة‬ ‫لن‬ ‫تكون‬ ‫الرٌاضٌات‬ ‫بمفاهٌم‬ ‫عمٌمة‬ ‫معرفة‬ . ‫فممدار‬ ‫لذلن‬ ،‫الحسابٌة‬ ‫والمسابل‬ ‫المشاكل‬ ‫لحل‬ ‫عامة‬ ‫طرق‬ ً‫ه‬ ‫الخوارزمٌات‬ ّ‫أن‬ ‫تذكر‬ ،‫حلها‬ ‫ترٌد‬ ً‫الت‬ ‫المشكلة‬ ‫بنوع‬ ‫ٌتعلك‬ ‫تحتاجها‬ ً‫الت‬ ‫الرٌاضٌات‬ ،‫معمدة‬ ‫مشكلة‬ ‫حل‬ ‫ترٌد‬ ‫كنت‬ ‫إن‬ ‫متمدمة‬ ‫معرفة‬ ‫إلى‬ ‫وتحتاج‬ ‫معمدة‬ ‫ستكون‬ ‫الخوارزمٌة‬ ّ‫أن‬ ‫األرجح‬ ‫فعلى‬ ،‫بالمناخ‬ ‫التنبؤ‬ ‫مثل‬ ً‫الت‬ ‫المسابل‬ ‫معظم‬ ّ‫أن‬ ‫إذ‬ ،‫الخوارزمٌات‬ ‫تعلم‬ ‫عن‬ ‫ّن‬‫د‬‫وٌص‬ ‫ٌخٌفن‬ ‫هذا‬ ‫تدع‬ ‫ال‬ ‫لكن‬ ‫بالرٌاضٌات‬ ‫الر‬ ‫بأساسٌات‬ ‫بسٌطة‬ ‫معرفة‬ ‫إلى‬ ‫إال‬ ‫تحتاج‬ ‫ال‬ ‫مشاكل‬ ً‫ه‬ ‫واجهها‬ُ‫ت‬‫س‬ ‫العملٌات‬ ‫مثل‬ ،‫ٌاضٌات‬ ‫البسٌطة‬ ‫الحسابٌة‬ . ‫تفهم‬ ‫دمت‬ ‫فما‬ ،‫الخوارزمٌات‬ ‫تتعلم‬ ً‫لك‬ ‫الرٌاضٌات‬ ‫تعلم‬ ‫إلى‬ ‫تحتاج‬ ‫ال‬ ‫أنن‬ ‫هو‬ ‫المول‬ ‫خالصة‬ ‫مثل‬ ،‫البسٌطة‬ ‫المفاهٌم‬ ‫وبعض‬ ،‫والضرب‬ ‫الجمع‬ ‫مثل‬ ،‫البسٌطة‬ ‫الحسابٌة‬ ‫العملٌات‬ ‫تجري‬ ‫كٌف‬ ‫تتعلم‬ ‫أن‬ ‫فٌمكنن‬ ‫المعادالت‬ ‫حل‬ ‫وطرق‬ ‫والدوال‬ ‫المجموعات‬ ‫بسهولة‬ ‫الخوارزمٌات‬ .
  • 18.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 08 0202 ‫م‬ – 5221 ‫هـ‬ ‫بٌن‬ ‫االرتباط‬ ً‫ه‬ ‫األهم‬ ‫النمطة‬ ‫لكن‬ ً‫المنطم‬ ‫التفكٌر‬ ‫أو‬ ‫المشكالت‬ ‫حل‬ ‫طرق‬ ‫الخوارزمٌات‬ ‫وبٌن‬ ‫وجه‬ ‫على‬ ‫وللمبرمجٌن‬ ‫ا‬ً‫م‬‫عمو‬ ‫للبشر‬ ‫ضرورٌة‬ ‫مهارة‬ ‫شن‬ ‫بال‬ ‫هو‬ ً‫المنطم‬ ‫فالتفكٌر‬ ،‫والبرمجة‬ ‫المهارة‬ ‫هذه‬ ‫لمنحهم‬ ‫مبكرة‬ ‫سن‬ ‫من‬ ‫لألطفال‬ ‫تعلٌمه‬ ‫الضروري‬ ‫ومن‬ ‫الخصوص‬ ‫المهمة‬ ً‫المهن‬ ‫مستمبلهم‬ ً‫ف‬ ‫لنجاحهم‬ ‫ًا‬‫د‬‫ج‬ ‫والضرورٌة‬ . ‫الخوارزمٌات‬ ‫تحلٌل‬ : - ‫مشكلة‬ ‫لحل‬ ‫سبمة‬ُ‫م‬ ‫خطة‬ ‫تملن‬ ‫تكن‬ ‫لم‬ ‫فإن‬ ‫حسابٌة‬ ‫مشكلة‬ ‫لحل‬ ‫خطة‬ ‫األصل‬ ً‫ف‬ ً‫ه‬ ‫الخوارزمٌة‬ ‫فمد‬ ،‫بسٌطة‬ ‫المشكلة‬ ‫كانت‬ ‫لو‬ ‫وحتى‬ ‫المشكلة‬ ‫تلن‬ ‫لحل‬ ‫األرجح‬ ‫على‬ ‫محاوالتن‬ ‫فستفشل‬ ،‫معمدة‬ ‫ا‬ ‫من‬ ‫العدٌد‬ ‫هنان‬ ‫ٌكون‬ ‫و‬ ،‫لحلول‬ ‫بعض‬ ‫من‬ ‫وأكفأ‬ ‫أسرع‬ ‫الحلول‬ ‫هذه‬ ‫بعض‬ . ‫الولت‬ ‫ناحٌة‬ ‫من‬ ‫الخوارزمٌات‬ ‫كفاءة‬ ‫بدراسة‬ ‫ٌهتم‬ ‫الذي‬ ‫الخوارزمٌات‬ ‫تحلٌل‬ ‫أهمٌة‬ ً‫تأت‬ ‫هنا‬ ‫من‬ ‫ا‬ً‫ك‬‫استهال‬ ‫واأللل‬ ‫واألسرع‬ ‫األبسط‬ ‫الحل‬ ‫واختٌار‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫ٌحتاجها‬ ً‫الت‬ ‫والذاكرة‬ ‫تخفض‬ ‫أن‬ ‫ترٌد‬ ،‫الحوسبة‬ ‫بلغة‬ ‫أو‬ ،‫للموارد‬ ٌ‫تعم‬ ‫الخوارزمٌة‬ ‫د‬ Algorithms Complexity ‫ممكن‬ ‫حد‬ ‫ألصى‬ ‫إلى‬ . َ‫ة‬ٌ‫خوارزم‬ ‫الخوارزمٌة‬ ‫كانت‬ ‫إن‬ ،‫المشكلة‬ ‫لحل‬ ‫الضرورٌة‬ ‫الموارد‬ ‫كل‬ ‫الخوارزمٌة‬ ‫تعمٌد‬ ‫ٌشمل‬ ‫الخوارزمٌة‬ ‫كانت‬ ‫إن‬ ‫أما‬ .‫الوجبة‬ ‫إلعداد‬ ‫الالزمة‬ ‫والطالة‬ ‫الولت‬ ‫سٌكون‬ ‫تعمٌدها‬ ّ‫فإن‬ ،‫طبخ‬ ‫سٌكون‬ ،‫الرٌاضٌات‬ ً‫ف‬ ‫مشكلة‬ ‫لحل‬ ‫تسعى‬ ‫خطوات‬ ‫إلجراء‬ ‫الالزم‬ ‫الولت‬ ‫هو‬ ‫تعمٌدها‬ ‫الخوارزمٌة‬ . ‫الضرورٌان‬ ‫الذاكرة‬ ‫ومساحة‬ ‫الولت‬ ‫سٌكون‬ ‫تعمٌدها‬ ّ‫فإن‬ ،‫حاسوبٌة‬ ‫الخوارزمٌة‬ ‫كانت‬ ‫إن‬ ‫أما‬ ‫الخوارزمٌات‬ ‫علم‬ ً‫ف‬ ً ‫كامال‬ ‫ا‬ً‫ع‬‫فر‬ ‫العلماء‬ ‫ابتكر‬ ‫السبب‬ ‫لهذا‬ .‫الخوارزمٌة‬ ‫خطوات‬ ‫لتنفٌذ‬ ‫ى‬ّ‫م‬‫ُس‬ٌ ‫الخوارزمٌات‬ ‫تعمٌد‬ ‫لتمدٌر‬ ‫ا‬ً‫ص‬ّ‫ص‬‫خ‬ُ‫م‬ ‫التعمٌد‬ ‫نظرٌة‬ ‫إلى‬ ‫الخوارزمٌات‬ ‫ف‬ّ‫ن‬‫ٌص‬ ‫والذي‬ ، ً‫الزمان‬ ‫تعمٌدها‬ ‫بحسب‬ ‫أصناف‬ Time Complexity ‫الذي‬ ‫الولت‬ ‫ممدار‬ ‫ٌصف‬ ‫الذي‬ ‫المساحة‬ ‫بتعمٌد‬ ‫ٌسمى‬ ‫ما‬ ‫أو‬ ً‫المكان‬ ‫وتعمٌدها‬ .‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫ٌستغرله‬ Space Complexity ‫الخوارزم‬ ‫عملٌات‬ ‫لتنفٌذ‬ ‫الالزمة‬ ‫الذاكرة‬ ‫خالٌا‬ ‫عدد‬ ‫ٌمثل‬ ‫الذي‬ ‫استثناء‬ ‫مع‬ ‫ٌة‬ ‫الخوارزمٌة‬ ‫لدخل‬ ‫المخصصة‬ ‫المساحة‬ . ‫ٌسمى‬ ‫خاص‬ ‫بتدوٌن‬ ‫الخوارزمٌة‬ ‫تعمٌد‬ ‫عن‬ ‫التعبٌر‬ ‫ٌتم‬ Big O notation ‫لوصف‬ ‫طرٌمة‬ ‫وهو‬ ‫الصنف‬ ‫هو‬ ‫األصناف‬ ‫هذه‬ ‫وأدنى‬ ‫جبرٌة‬ ‫مصطلحات‬ ‫باستخدام‬ ً‫الزمن‬ ‫الخوارزمٌة‬ ‫تعمٌد‬ O(1)‎ ، ‫لحل‬ ‫ا‬ً‫ت‬‫ثاب‬ ‫ولتا‬ ‫تستغرق‬ ‫الخوارزمٌة‬ ّ‫أن‬ ً‫ٌعن‬ ‫والذي‬ ً‫ف‬ ‫كما‬ ‫الدخل‬ ‫حجم‬ ‫كان‬ ‫مهما‬ ‫المشكلة‬ ‫لابمة‬ ‫بٌن‬ ‫من‬ ‫رلم‬ ‫أول‬ ‫طباعة‬ ‫خوازرمٌة‬ ‫أو‬ ً ‫مثال‬ ً‫زوج‬ ‫أم‬ ‫فردي‬ ‫العدد‬ ‫كون‬ ‫معرفة‬ ‫خوارزمٌة‬ ‫الصنف‬ ‫أما‬ ،‫األرلام‬ ‫من‬ O(n)‎ ‫الدخل‬ ‫حجم‬ ‫مع‬ ‫متناسبة‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫مدة‬ ّ‫أن‬ ً‫ٌعن‬َ‫ف‬ n ‫كما‬ ‫عدد‬ ‫أكبر‬ ‫إٌجاد‬ ‫وخوازمٌة‬ ‫العدد‬ ‫مضروب‬ ‫حساب‬ ‫خوارزمٌة‬ ً‫ف‬ ‫األعداد‬ ‫من‬ ‫مجموعة‬ ‫بٌن‬ ‫من‬ . ‫تدوٌن‬ ‫وفك‬ ‫الخوارزمٌات‬ ‫تعمٌد‬ ‫أنواع‬ ‫بأشهر‬ ‫مختصرة‬ ‫لابمة‬ ‫وإلٌن‬ Big O ‫منها‬ ‫كل‬ ‫وداللة‬ :
  • 19.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 09 0202 ‫م‬ – 5221 ‫هـ‬  O(1)‎ ‫الدخل‬ ‫حجم‬ ‫كان‬ ‫مهما‬ ‫الزمن‬ ‫نفس‬ ‫الخوارزمٌة‬ ‫تستغرق‬ ‫أي‬ :‫ثابت‬ ً‫زمن‬ ‫تعمٌد‬ .  O(n)‎ ‫حجم‬ ‫مع‬ ً‫خط‬ ‫بشكل‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ ‫زمن‬ ‫ٌتناسب‬ ‫أي‬ :ً‫خط‬ ً‫زمن‬ ‫تعمٌد‬ ‫إذا‬ ‫آخر‬ ‫بمعنى‬ ،‫الدخل‬ ‫الدخل‬ ‫حجم‬ ‫كان‬ n ‫المطلوب‬ ‫الخطوات‬ ‫عدد‬ ‫فإن‬ ‫لحلها‬ ‫سٌكون‬ n ‫األكثر‬ ‫على‬ .  O(sqrt(n)) ‫هو‬ ‫الخوازرمٌة‬ ‫دخل‬ ‫حجم‬ ‫كان‬ ‫إذا‬ ‫أي‬ :ً‫تربٌع‬ ‫جذر‬ ‫تعمٌد‬ n ‫سوف‬ ‫تنفٌذ‬ ‫زمن‬ ‫ٌتناسب‬ ‫الخوارزمٌة‬ ‫الدخل‬ ‫لمٌمة‬ ً‫التربٌع‬ ‫الجذر‬ ‫مع‬ .  O(n^c)‎ ‫ت‬ ‫زمن‬ ‫ٌتناسب‬ :‫الحدود‬ ‫كثٌر‬ ‫تعمٌد‬ ‫مرفوع‬ ‫الدخل‬ ‫حجم‬ ‫مع‬ ‫الخوارزمٌة‬ ‫نفٌذ‬ ‫لألس‬ c ً‫تربٌع‬ ً‫زمن‬ ‫تعمٌد‬ ‫ٌكون‬ ‫فمد‬ ‫أنواع‬ ‫وله‬ O (n^²)‎ ‫تنفٌذ‬ ‫زمن‬ ‫ٌتناسب‬ ‫أي‬ ً‫تكعٌب‬ ً‫زمن‬ ‫تعمٌد‬ ‫أو‬ ‫الدخل‬ ‫حجم‬ ‫مكعب‬ ‫مع‬ ‫الخوارزمٌة‬ O(n^3)‎ ‫زمن‬ ‫ٌتناسب‬ ‫أي‬ ‫الدخل‬ ‫حجم‬ ‫مكعب‬ ‫مع‬ ‫الخوارزمٌة‬ ‫تنفٌذ‬ .  O(log n)‎ ‫تن‬ ‫زمن‬ ‫تناسب‬ :ً‫لوغارٌتم‬ ‫تعمٌد‬ ‫الدخل‬ ‫حجم‬ ‫لوغارٌتم‬ ‫مع‬ ‫الخوارزمٌة‬ ‫فٌذ‬ .  O(n log n)‎ ً‫الخط‬ ‫من‬ ً‫ال‬ٌ‫لل‬ ‫أبطأ‬ ‫وهو‬ :ً‫خط‬ ً‫لوغارٌتم‬ ‫تعمٌد‬  O(2^n)‎ ‫حجم‬ ‫زٌادة‬ ‫مع‬ ً‫أس‬ ‫بشكل‬ ‫الخوارزمٌة‬ ‫خطوات‬ ‫تتضاعف‬ ‫وفٌه‬ :ً‫أس‬ ‫تعمٌد‬ ‫الدخل‬ .  O(n!)‎ ‫ضرب‬ ‫أي‬ ‫الدخل‬ ً‫عامل‬ ‫لٌمة‬ ‫مع‬ ‫الخوارزمٌة‬ ‫زمن‬ ‫ٌتناسب‬ ‫أي‬ :ً‫عامل‬ ‫تعمٌد‬ ‫جمٌع‬ ‫الدخل‬ ‫لٌمة‬ ‫من‬ ‫األصغر‬ ‫الموجبة‬ ‫الصحٌحة‬ ‫األعداد‬ . ‫وجدته‬ ‫الذي‬ ‫الحل‬ ‫ذلن‬ ‫ٌكون‬ ‫أن‬ ‫النادر‬ ‫من‬ ‫لكن‬ ،‫الخوارزمٌات‬ ‫بدون‬ ‫للمشاكل‬ ً ‫حال‬ ‫تجد‬ ‫أن‬ ‫ٌمكنن‬ ‫الحل‬ ‫على‬ ‫العثور‬ ‫من‬ ‫نن‬ّ‫ك‬‫ٌم‬ ‫فهو‬ ‫الخوارزمٌات‬ ‫تحلٌل‬ ‫فابدة‬ ‫وهذه‬ ،‫واألكفأ‬ ‫األفضل‬ ‫الحل‬ ‫هو‬ ‫للموارد‬ ‫ا‬ً‫ك‬‫استهال‬ ‫واأللل‬ ‫واألنسب‬ ‫األمثل‬ . ‫ممال‬ ‫بمطالعة‬ ‫أنصح‬ ‫المعلومات‬ ‫من‬ ‫للمزٌد‬ ‫الخوارزمٌات‬ ‫تحلٌل‬ ‫إلى‬ ‫مدخل‬ ‫وممال‬ ‫الشامل‬ ‫الدلٌل‬ ‫الخوارزمٌات‬ ‫تعمٌد‬ ‫عن‬ ‫البرمجٌة‬ ‫الخوارزمٌات‬ ‫أنواع‬ : -
  • 20.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 21 0202 ‫م‬ – 5221 ‫هـ‬ ‫بحسب‬ ‫الخوارزمٌات‬ ‫وأنواع‬ ‫أسالٌب‬ ‫وتتنوع‬ ‫المشاكل‬ ‫لحل‬ ‫عامة‬ ‫خطط‬ ً‫ه‬ ‫الخوارزمٌات‬ ‫المشكلة‬ ‫لحل‬ ‫الخوارزمٌة‬ ‫تتبعه‬ ‫الذي‬ ‫األسلوب‬ ‫على‬ ‫وبناء‬ ،‫تحلها‬ ً‫الت‬ ‫المشكلة‬ ‫نوع‬ ‫بحسب‬ ‫أو‬ ‫أبرزها‬ ‫ومن‬ ‫الخوارزمٌات‬ ‫من‬ ‫مختلفة‬ ‫ا‬ً‫ع‬‫أنوا‬ ‫نجد‬ ‫أن‬ ‫ٌمكن‬ ‫ذلن‬ :  ‫الغاشمة‬ ‫الموة‬ ‫خوارزمٌات‬ : Brute force algorithms ‫من‬ ‫الخوارزمٌات‬ ‫تحاول‬ ‫من‬ ‫تتمكن‬ ‫حتى‬ ‫الممكنة‬ ‫الخٌارات‬ ‫بجمٌع‬ ‫وتمر‬ ‫مباشرة‬ ‫بطرٌمة‬ ‫المشكلة‬ ‫حل‬ ‫النوع‬ ‫هذا‬ ‫العثور‬ ‫المشكلة‬ ‫لهذه‬ ‫حل‬ ‫على‬ .  ‫الجشعة‬ ‫الخوارزمٌات‬ : Greedy algorithms ‫حل‬ ‫الجشعة‬ ‫الخوارزمٌات‬ ‫تحاول‬ ‫للمشكلة‬ ‫العام‬ ‫الحل‬ ‫من‬ ‫ًا‬‫د‬ٌ‫رو‬ ‫ًا‬‫د‬ٌ‫رو‬ ‫تمترب‬ ‫بحٌث‬ ،‫فخطوة‬ ‫خطوة‬ ‫المشكلة‬ .  ‫الدٌنامٌكٌة‬ ‫البرمجة‬ ‫خوارزمٌات‬ : Dynamic Programming ‫خوارزمٌات‬ ‫م‬ّ‫س‬‫تم‬ ‫الفرعٌة‬ ‫المشاكل‬ ‫تلن‬ ‫تحل‬ ّ‫م‬‫ث‬ ،‫أبسط‬ ‫فرعٌة‬ ‫مشاكل‬ ‫إلى‬ ‫المشكلة‬ ‫الدٌنامٌكٌة‬ ‫البرمجة‬ ً‫النهاب‬ ‫الحل‬ ‫الستنتاج‬  ‫تسد‬ ‫فرق‬ ‫خوارزمٌات‬ : Divide and conquer algorithms ‫خوارزمٌات‬ ‫م‬ِّ‫س‬‫تم‬ ‫ا‬ ‫وتدمج‬ ‫تحلها‬ ّ‫م‬‫ث‬ ،‫األصلٌة‬ ‫المسألة‬ ‫تشبه‬ ‫فرعٌة‬ ‫مسابل‬ ‫إلى‬ ‫المسألة‬ ‫تسد‬ ‫ق‬ِّ ‫فر‬ ‫لحلول‬ ‫األصلٌة‬ ‫المسألة‬ ٍّ‫ل‬‫ح‬ ‫لتمدٌم‬ .  ً‫الخلف‬ ‫التعمب‬ ‫خوارزمٌات‬ : Backtracking algorithms ‫خوارزمٌات‬ ‫تحاول‬ ‫حذف‬ ‫مع‬ ،‫فخطوة‬ ‫خطوة‬ ‫ًا‬ٌ‫تصاعد‬ ‫الحل‬ ‫بناء‬ ‫عبر‬ ‫ًا‬ٌ‫تعاود‬ ‫المشكلة‬ ‫حل‬ ً‫الخلف‬ ‫التعمب‬ ‫أثناء‬ ‫ولت‬ ّ‫ي‬‫أ‬ ً‫ف‬ ‫حلها‬ ‫راد‬ُ‫م‬‫ال‬ ‫المسألة‬ ‫تفرضها‬ ً‫الت‬ ‫للمٌود‬ ‫تستجٌب‬ ‫ال‬ ً‫الت‬ ‫الحلول‬ ‫تنفٌذ‬ ‫الخوارزمٌة‬ .  ‫الترتٌب‬ ‫خوارزمٌات‬ : Sort algorithms ‫من‬ ‫مجموعة‬ ‫ترتب‬ ‫خوارزمٌات‬ ً‫ه‬ ً‫ف‬ ‫الهامة‬ ‫الخطوات‬ ‫أحد‬ ‫هو‬ ‫والفرز‬ .ً‫هجاب‬ ‫أو‬ ً‫رلم‬ ‫معٌن‬ ‫ترتٌب‬ ً‫ف‬ ‫المابمة‬ ‫العناصر‬ ‫ولكل‬ ‫الفرز‬ ‫عملٌة‬ ‫تحمٌك‬ ‫من‬ ‫تمكننا‬ ‫خوارزمٌات‬ ‫عدة‬ ‫توجد‬ ،‫ًا‬‫د‬ٌ‫تعم‬ ‫األكثر‬ ‫الخوارزمٌات‬ ‫ومحد‬ ‫مٌزاتها‬ ‫منها‬ ‫ودٌتها‬ .  ‫البحث‬ ‫خوارزمٌات‬ : Search algorithms ‫مولع‬ ‫بتحدٌد‬ ‫تموم‬ ‫خوارزمٌات‬ ً‫ه‬ ‫ضمن‬ ‫المخزنة‬ ‫البٌانات‬ ‫عن‬ ‫تبحث‬ ‫أنها‬ ‫أي‬ ‫البٌانات‬ ‫من‬ ‫مجموعة‬ ‫بٌن‬ ‫محددة‬ ‫بٌانات‬ ‫باستردادها‬ ‫وتموم‬ ‫البٌانات‬ ‫بنى‬ ‫أو‬ ‫الهٌاكل‬ ‫بعض‬ .  ‫مج‬ ‫على‬ ً‫ء‬‫بنا‬ ‫التعلم‬ ‫تحاول‬ ‫خوارزمٌات‬ ً‫ه‬ :ً‫اﻵل‬ ‫التعلم‬ ‫خوارزمٌات‬ ‫حاالت‬ ‫من‬ ‫موعة‬ ‫علٌها‬ ً‫ء‬‫بنا‬ ‫معمدة‬ ‫لرارات‬ ‫اتخاذ‬ ‫من‬ ‫تتمكن‬ ً‫ك‬ ‫السابمة‬ ‫المرار‬ ‫اتخاذ‬ .  ‫غٌر‬ ‫نص‬ ‫إلى‬ ‫ممروء‬ ‫نص‬ ‫بتحوٌل‬ ‫تموم‬ ً‫الت‬ ‫الخوارزمٌات‬ ً‫ه‬ :‫التشفٌر‬ ‫خوارزمٌات‬ ‫بفهم‬ ‫فمط‬ ‫لهم‬ ‫المصرح‬ ‫لألطراف‬ ‫ٌمكن‬ ‫بحٌث‬ ‫المشفر‬ ‫النص‬ ‫باسم‬ ‫ُعرف‬ٌ ‫ممروء‬ ‫خوا‬ ً‫وه‬ ‫النص‬ ‫هذا‬ ً‫ف‬ ‫الموجودة‬ ‫المعلومات‬ ‫البٌانات‬ ‫أمن‬ ‫مجال‬ ً‫ف‬ ‫ًا‬‫د‬‫ج‬ ‫هامة‬ ‫رزمٌات‬ ‫الخصوصٌة‬ ‫على‬ ‫والحفاظ‬ ‫الحساسة‬ . ‫من‬ ‫العدٌد‬ ‫بالطبع‬ ‫وهنان‬ ‫ا‬ً‫ع‬‫شٌو‬ ‫األكثر‬ ‫الخوارزمٌات‬ ‫وتصنٌفات‬ ‫أنواع‬ ‫بعض‬ ‫تلن‬ ‫كانت‬ ‫المختلفة‬ ‫الحاالت‬ ‫من‬ ‫للعدٌد‬ ‫األخرى‬ ‫الخوارزمٌات‬ . ‫مثل‬ ‫التطبٌمات‬ ً‫ف‬ ‫بسهولة‬ ‫تطبٌمها‬ ‫ٌمكن‬ ‫أخرى‬ ‫طرق‬ ‫ا‬ً‫ض‬ٌ‫أ‬ ‫هنان‬ ‫خوارز‬ ‫مٌة‬ Dijkstra ‫و‬ Cycle Detection ‫و‬ Kruskal Minimum Spanning Trees ‫من‬ ً‫فه‬ ‫منها‬ ‫للتعلم‬ ‫للمبتدبٌن‬ ‫األساسٌة‬ ‫الخوارزمٌات‬ . ‫البرمجة‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫أهمٌة‬ : -
  • 21.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 20 0202 ‫م‬ – 5221 ‫هـ‬ ،‫والتطبٌمات‬ ‫البرامج‬ ‫لكتابة‬ ‫ضروري‬ ‫غٌر‬ ‫وهو‬ ، ٌ‫َرف‬‫ت‬ ‫الخوارزمٌات‬ ‫تعلم‬ ّ‫أن‬ ‫ٌمول‬ ‫لد‬ ‫من‬ ‫هنان‬ ‫أن‬ ‫للمبرمج‬ ‫ٌمكن‬ ‫ه‬ّ‫ن‬‫وأ‬ ‫الخوارزمٌات‬ ‫مفاهٌم‬ ‫إلى‬ ‫الحاجة‬ ‫دون‬ ‫مباشرة‬ ‫برامجه‬ ‫ٌكتب‬ . ‫تكون‬ ‫أن‬ ‫ٌمكنن‬ ‫ال‬ ‫لكن‬ ،‫ا‬ً‫ج‬‫مبرم‬ ‫َكون‬‫ت‬‫ل‬ ‫الخوارزمٌات‬ ً‫ف‬ ‫ا‬ً‫خبٌر‬ ‫تكون‬ ‫أن‬ ‫علٌن‬ ‫لٌس‬ ‫ه‬ّ‫ن‬‫أ‬ ‫صحٌح‬ ‫الخوارزمٌات‬ ‫تصمٌم‬ ‫فن‬ ‫تتعلم‬ ‫أن‬ ‫دون‬ ‫ا‬ً‫ف‬‫ومحتر‬ ‫ا‬ً‫ع‬‫بار‬ ‫ا‬ً‫ج‬‫مبرم‬ . ‫أبرزها‬ ‫الفوابد‬ ‫من‬ ‫العدٌد‬ ‫للمبرمج‬ ‫الخوارزمٌات‬ ‫تعلم‬ ‫ٌوفر‬ :  ‫أفضل‬ ‫بشكل‬ ‫المشكالت‬ ‫حل‬ ‫على‬ ‫المدرة‬  ‫الحاسوبٌة‬ ‫للموارد‬ ‫الفعال‬ ‫االستخدام‬  ‫البرمجة‬ ‫ولت‬ ‫ٌوفر‬  ‫أفضل‬ ‫ا‬ً‫ج‬‫مبرم‬ ‫منن‬ ‫ٌجعل‬ ‫تعزٌزها‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫تعلم‬ ‫ٌسهم‬ ‫كٌف‬ ‫ونتعرف‬ ‫التفصٌل‬ ‫من‬ ‫بمزٌد‬ ‫منها‬ ‫فابدة‬ ‫كل‬ ‫لننالش‬ . ‫أفضل‬ ‫بشكل‬ ‫المشكالت‬ ‫حل‬ ‫على‬ ‫المدرة‬ ‫حل‬ ‫لطرق‬ ‫تعلمن‬ ‫سٌحسن‬ ‫عامة‬ ‫بصورة‬ ‫المشكالت‬ ‫حل‬ ‫على‬ ‫لدرتن‬ ‫من‬ ‫الخوارزمٌات‬ ‫الحلول‬ ً‫ف‬ ‫التفكٌر‬ ً‫ف‬ ‫ذهنٌة‬ ‫مرونة‬ ‫وٌكسبن‬ ،‫الخصوص‬ ‫وجه‬ ‫على‬ ‫البرمجٌة‬ ‫والمشكالت‬ ‫المستخدمة‬ ‫البرمجٌة‬ ‫اللغة‬ ‫كانت‬ ‫ًا‬ٌ‫أ‬ ‫المتنوعة‬ ‫الحاسوبٌة‬ ‫البرامج‬ ‫كتابة‬ ً‫ف‬ ‫ا‬ً‫م‬‫الح‬ ‫وٌساعدن‬ ،‫البرمجة‬ ‫لغات‬ ‫عن‬ ‫مستملة‬ ‫الخوارزمٌات‬ ّ‫بأن‬ ‫ا‬ً‫ص‬‫خصو‬ ‫لغة‬ ‫كانت‬ ‫مهما‬ ‫استخدامها‬ ‫ٌمكنن‬ ‫لذا‬ ‫علٌها‬ ‫تعمل‬ ً‫الت‬ ‫البرمجة‬ . ‫للموارد‬ ‫الفعال‬ ‫االستخدام‬ ‫والتخزٌن‬ ‫الذاكرة‬ ‫مثل‬ ‫للموارد‬ ‫المناسب‬ ‫االستخدام‬ ‫الصحٌحة‬ ‫الخوارزمٌة‬ ‫اختٌار‬ ‫لن‬ ‫ٌضمن‬ ‫ومبتكر‬ ‫مفٌدة‬ ‫التطبٌك‬ ‫أو‬ ‫البرنامج‬ ‫علٌها‬ ‫بنٌت‬ ً‫الت‬ ‫الفكرة‬ ‫تكون‬ ‫أن‬ ً‫ٌكف‬ ‫فال‬ .‫وغٌرها‬ ‫والشبكة‬ ،‫ة‬
  • 22.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 22 0202 ‫م‬ – 5221 ‫هـ‬ ‫فما‬ ،‫محدودة‬ ‫وموارد‬ ‫معمول‬ ‫ولت‬ ً‫ف‬ ‫الجوال‬ ‫أو‬ ‫الحاسوب‬ ‫ذها‬ّ‫ف‬‫ٌن‬ ‫بحٌث‬ ‫عملٌة‬ ‫تكون‬ ‫أن‬ ً‫ٌنبغ‬ ‫إلى‬ ‫ٌحتاج‬ ‫برنامج‬ ‫فابدة‬ ‫وما‬ ،‫ا‬ً‫ع‬‫مرب‬ ‫لٌرسم‬ ‫كاملة‬ ‫دلٌمة‬ ‫ٌحتاج‬ ‫رسم‬ ‫تطبٌك‬ ‫فابدة‬ ٔٓ ‫جٌجاباٌت‬ ‫لٌعمل‬ ‫الذاكرة‬ ‫من‬ ! ‫البرمجة‬ ‫ولت‬ ‫توفٌر‬ ‫إ‬ ،‫الولت‬ ‫من‬ ‫الكثٌر‬ ‫الخوارزمٌات‬ ‫تعلم‬ ‫علٌن‬ ‫ٌوفر‬ ‫لد‬ ً‫الت‬ ‫والمسابل‬ ‫المشاكل‬ ‫معظم‬ ّ‫أن‬ ‫ذ‬ ‫ٌغنٌن‬ ‫ما‬ ،‫وسرٌعة‬ ‫نة‬ّ‫س‬‫ح‬ُ‫م‬ ‫خوارزمٌات‬ ‫هٌبة‬ ‫على‬ ‫جاهزة‬ ‫حلول‬ ‫لها‬ ‫البرامج‬ ‫كتابة‬ ‫أثناء‬ ‫تعترضن‬ ‫األرجح‬ ‫على‬ ‫لبلن‬ ‫ها‬ّ‫حل‬ ‫من‬ ‫هنان‬ ّ‫ألن‬ ،‫ما‬ ‫مشكلة‬ ‫تعترضن‬ ‫مرة‬ ‫كل‬ ً‫ف‬ ‫العجلة‬ ‫اختراع‬ ‫إعادة‬ ‫عن‬ ‫تحو‬ ‫هو‬ ‫فعله‬ ‫علٌن‬ ‫ما‬ ‫وكل‬ ‫خوارزمٌة‬ ‫هٌبة‬ ‫على‬ ‫ّها‬‫د‬‫وأع‬ ‫ثم‬ ‫تستعملها‬ ً‫الت‬ ‫البرمجة‬ ‫لغة‬ ‫إلى‬ ‫ٌلها‬ ‫خوارزمٌات‬ ‫مثل‬ ‫والفعالة‬ ‫الشهٌرة‬ ‫الخوارزمٌات‬ ‫فمعظم‬ ‫تنفٌذها‬ ‫إلى‬ ‫حتى‬ ‫تضطر‬ ‫ال‬ ‫ولد‬ ‫ذها‬ّ‫ف‬‫تن‬ ‫شٌفراتن‬ ً‫ف‬ ‫استخدامها‬ ‫ٌمكنن‬ ‫جاهزة‬ ‫مكتبات‬ ‫بشكل‬ ‫البرمجة‬ ‫لغات‬ ً‫ف‬ ‫تدمج‬ ‫والفرز‬ ‫البحث‬ ‫البرمجٌة‬ . ‫أفضل‬ ‫ا‬ً‫ج‬‫مبرم‬ ‫منن‬ ‫تجعل‬ ‫الخوارزمٌات‬ ‫الخ‬ ‫تعلم‬ ‫تطبٌمات‬ ً‫ف‬ ‫ا‬ً‫ص‬‫متخص‬ ‫كنت‬ ‫واء‬َ‫س‬‫ف‬ ،‫احترافٌة‬ ‫وأكثر‬ ‫أفضل‬ ‫ا‬ً‫ج‬‫مبرم‬ ‫سٌجعلن‬ ‫وارزمٌات‬ ‫من‬ ‫غٌرها‬ ‫أو‬ ‫األلعاب‬ ‫تصمٌم‬ ‫أو‬ ‫الموالع‬ ‫بناء‬ ً‫ف‬ ‫أو‬ ،‫المكتب‬ ‫سطح‬ ‫تطبٌمات‬ ‫أو‬ ‫الجوال‬ ‫مجاالت‬ ‫البرمجة‬ ‫برامج‬ ‫تطوٌر‬ ‫على‬ ‫وٌساعدن‬ ً‫البرمج‬ ‫تفكٌرن‬ ‫أفك‬ ‫سٌوسع‬ ‫الخوارزمٌات‬ ‫تعلم‬ ّ‫فإن‬ ، ‫وأكثر‬ ‫وأسرع‬ ‫أجود‬ ‫موثولٌة‬ . ‫الخوارزمٌات‬ ‫تعلم‬ ‫مصادر‬ ‫أهم‬ : - ‫مجاالت‬ ً‫ف‬ ‫ٌظهر‬ ‫ما‬ ‫أكثر‬ ‫ٌظهر‬ ‫الضعف‬ ‫هذا‬ ،ً‫التمن‬ ً‫العرب‬ ‫المحتوى‬ ً‫ف‬ ‫ضعف‬ ‫لألسف‬ ‫هنان‬ ‫من‬ ‫العدٌد‬ ‫حسوب‬ ‫أكادٌمٌة‬ ‫وفرت‬ ‫فمد‬ ً‫العرب‬ ‫المحتوى‬ ً‫ف‬ ‫المصور‬ ‫هذا‬ ّ‫د‬‫ولس‬ .‫الخوارزمٌات‬ ‫العربٌة‬ ‫باللغة‬ ‫المٌمة‬ ‫التعلم‬ ‫مصادر‬ . ‫الك‬ ‫لألهمٌة‬ ‫ا‬ً‫فنظر‬ ‫مثل‬ ‫المجاالت‬ ‫من‬ ‫غٌرها‬ ً‫وف‬ ،‫البرمجة‬ ‫مجاالت‬ ‫كافة‬ ً‫ف‬ ‫للخوارزمٌات‬ ‫بٌرة‬ ‫حسوب‬ ‫أكادٌمٌة‬ ‫لن‬ ‫وفرت‬ ‫فمد‬ ،‫وغٌرها‬ ‫والتنمٌة‬ ‫الرٌاضٌات‬ ‫الحاسب‬ ‫علوم‬ ‫دورة‬ ‫تتضمن‬ ً‫والت‬ ً‫ف‬ ‫مبتدئ‬ ‫أي‬ ‫ٌحتاجها‬ ‫متعددة‬ ‫مسارات‬ ‫البرمجة‬ ‫تعلم‬ ‫وبنى‬ ‫الخوارزمٌات‬ ‫مسار‬ ‫أهمها‬ ‫من‬ ‫أهم‬ ‫على‬ ‫وٌعرفن‬ ‫وتحلٌلها‬ ‫الخوارزمٌات‬ ‫كتابة‬ ‫كٌفٌة‬ ‫بخطوة‬ ‫خطوة‬ ‫ٌعلمن‬ ‫الذي‬ ‫المعطٌات‬ ‫والخوارزمٌات‬ ‫والترتٌب‬ ‫البحث‬ ‫خوارزمٌات‬ ‫مثل‬ ً‫البرمج‬ ‫عملن‬ ً‫ف‬ ‫تفٌدن‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫الكثٌر‬ ‫وغٌرها‬ ‫البٌانٌة‬ ‫الرسوم‬ ‫وخوارزمٌات‬ ‫الرٌاضٌة‬ . ‫األك‬ ‫نشرت‬ ‫كما‬ ‫سلسلة‬ ‫ادٌمٌة‬ ‫للمحترفٌن‬ ‫الخوارزمٌات‬ ‫بالتفصٌل‬ ‫الخوارزمٌات‬ ‫تشرح‬ ً‫الت‬ ‫كالولت‬ ‫البرامج‬ ‫تستهلكها‬ ً‫الت‬ ‫الموارد‬ ‫لتمدٌر‬ ‫التعمٌد‬ ‫مفهوم‬ ‫مثل‬ ‫األساسٌة‬ ‫مفاهٌمها‬ ‫كافة‬ ًّ‫وتغط‬ ‫العامة‬ ‫الخوارزمٌات‬ ‫أنماط‬ ‫وبعض‬ ،‫الدٌنامٌكٌة‬ ‫البرمجة‬ ‫مفاهٌم‬ ‫إلى‬ ‫إضافة‬ .‫والذاكرة‬ . ‫ب‬ ‫غنٌة‬ ‫السلسلة‬ ‫تلن‬ ‫المشاكل‬ ‫بعض‬ ‫لحل‬ ‫الخوارزمٌات‬ ‫من‬ ‫الكثٌر‬ ‫تستعرض‬ ‫إذ‬ ،‫التطبٌمٌة‬ ‫األمثلة‬ ‫عالوة‬ ،‫والبحث‬ ‫المصفوفات‬ ‫وترتٌب‬ ‫باألشجار‬ ‫المتعلمة‬ ‫تلن‬ ‫ا‬ً‫ص‬‫خصو‬ ‫الحاسب‬ ‫علم‬ ً‫ف‬ ‫التملٌدٌة‬ ‫األعداد‬ ‫ونظرٌة‬ ‫والهندسة‬ ‫الجبر‬ ‫مجاالت‬ ً‫ف‬ ‫المتنوعة‬ ‫الخوارزمٌات‬ ‫من‬ ‫طابفة‬ ‫على‬ . ٌ‫الخوارزم‬ ‫تنفذ‬ ‫السلسلة‬ ‫أن‬ ‫كما‬ ‫فمهما‬ ،‫البرمجة‬ ‫لغات‬ ‫من‬ ‫العدٌد‬ ‫خالل‬ ‫من‬ ‫تستعرضها‬ ً‫الت‬ ‫ات‬ ‫أو‬ ‫جافا‬ ‫أو‬ ‫باٌثون‬ ‫كانت‬ ‫سواء‬ ،‫خاصتن‬ ‫البرمجة‬ ‫لغة‬ ‫كانت‬ C++/C ‫أو‬ #C ،‫سكرٌبت‬ ‫جافا‬ ‫أو‬ ‫الكتاب‬ ‫هذا‬ ً‫ف‬ ‫وغٌرها‬ ‫اللغات‬ ‫بهذه‬ ‫أمثلة‬ ‫فستجد‬ .
  • 23.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 23 0202 ‫م‬ – 5221 ‫هـ‬ ‫عن‬ ً ‫شامال‬ ‫ا‬ً‫م‬ٌ‫توث‬ ‫كذلن‬ ‫وستجد‬ ‫حسوب‬ ‫موسوعة‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫ألهم‬ ‫توثٌمات‬ ‫ٌضم‬ ‫البرمجة‬ ً‫ف‬ ‫ستخدمة‬ُ‫م‬‫ال‬ ‫الخوارزمٌات‬ . ً‫ف‬ ‫تشترن‬ ‫بأن‬ ‫كذلن‬ ‫وننصحن‬ ‫ٌوتٌوب‬ ‫على‬ ‫حسوب‬ ‫أكادٌمٌة‬ ‫لناة‬ ‫من‬ ‫الكثٌر‬ ‫فٌها‬ ‫وستجد‬ ‫وغٌرها‬ ً‫المنطم‬ ‫والتفكٌر‬ ‫والخوارزمٌات‬ ‫البرمجة‬ ‫حول‬ ‫الشٌمة‬ ‫والمواضٌع‬ ‫المفٌدة‬ ‫الدروس‬ ‫الكثٌر‬ . ‫الخ‬ ‫أتعلم‬ ‫أن‬ ‫كمبتدئ‬ ً‫عل‬ ‫ٌجب‬ ‫هل‬ ‫تتساءل‬ ‫كنت‬ ‫إذا‬ ‫ا‬ً‫وأخٌر‬ ‫لغات‬ ‫إحدى‬ ‫أتعلم‬ ‫أم‬ ً ‫أوال‬ ‫وارزمٌات‬ ‫على‬ ‫بالتعرف‬ ‫أولى‬ ‫كخطوة‬ ‫تبدأ‬ ‫أن‬ ‫لن‬ ً‫فنصٌحت‬ ً ‫أوال‬ ‫البرمجة‬ ‫البرمجة‬ ‫أساسٌات‬ ‫التمكن‬ ‫وبعد‬ ً‫ف‬ ‫التوازي‬ ‫على‬ ً‫والخوارزم‬ ً‫البرمج‬ ‫تفكٌرن‬ ‫وتطوٌر‬ ‫الخوارزمٌات‬ ‫بتعلم‬ ‫البدء‬ ‫ٌمكنن‬ ‫منها‬ ‫كلٌهما‬ ً‫ف‬ ‫لالحتراف‬ ‫تصل‬ ‫حتى‬ ‫التعلم‬ ‫رحلة‬ . ‫ضمن‬ ‫البرمجة‬ ‫لسم‬ ً‫ف‬ ‫وستجد‬ ‫المتمدمة‬ ‫األمور‬ ‫لتعلم‬ ‫تنتمل‬ ‫أن‬ ‫ٌمكن‬ ‫األساسٌات‬ ‫تعلم‬ ‫أتمنت‬ ‫إذا‬ ‫المماالت‬ ‫من‬ ‫متنوعة‬ ‫مجموعة‬ ‫حسوب‬ ‫أكادٌمٌة‬ ً‫ف‬ "‫متمدمة‬ ‫برمجة‬ ‫"مماالت‬ ‫لسم‬ ً‫ف‬ ‫ًا‬‫د‬ٌ‫وتحد‬ ‫ٌمكنن‬ ‫سؤال‬ ‫أي‬ ‫واجهن‬ ‫حال‬ ً‫وف‬ ‫الخوارزمٌات‬ ‫مجال‬ ً‫ف‬ ‫وخبرتن‬ ‫معرفتن‬ ‫تزٌد‬ ً‫الت‬ ‫المتمدمة‬ ً‫ف‬ ‫طرحه‬ ‫واألجوبة‬ ‫األسبلة‬ ‫لسم‬ ‫األكادٌمٌة‬ ً‫ف‬ . :‫التطبٌمٌة‬ ‫الخوارزمٌات‬ _ - ‫وتنفٌذ‬ ‫مشكالت‬ ‫لحل‬ ‫تستخدم‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫إلى‬ ‫ٌشٌر‬ ‫مصطلح‬ ً‫ه‬ ‫التطبٌمٌة‬ ‫الخوارزمٌات‬ ‫من‬ ‫واسعة‬ ‫مجموعة‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫تطبٌك‬ ‫ٌمكن‬ .‫معٌن‬ ‫تطبٌك‬ ‫سٌاق‬ ً‫ف‬ ‫محددة‬ ‫وظابف‬ ‫وهندسة‬ ،‫الحاسوب‬ ‫علوم‬ ‫مثل‬ ‫المجاالت‬ ‫والذكاء‬ ،‫البٌانات‬ ‫وتحلٌل‬ ،‫البٌانات‬ ‫وعلم‬ ،‫البرمجٌات‬ ‫المجاالت‬ ‫من‬ ‫وغٌرها‬ ،‫والهندسة‬ ،‫والمحاسبة‬ ،‫واأللعاب‬ ،ً‫االصطناع‬ . ‫األداء‬ ‫وتحسٌن‬ ‫الوالعٌة‬ ‫الحٌاة‬ ‫مشاكل‬ ‫حل‬ ‫على‬ ‫لدرتها‬ ‫من‬ ً‫تأت‬ ‫التطبٌمٌة‬ ‫الخوارزمٌات‬ ‫أهمٌة‬ ‫تش‬ ‫ألهمٌتها‬ ‫الربٌسٌة‬ ‫النماط‬ ‫بعض‬ .‫التطبٌمات‬ ‫من‬ ‫العدٌد‬ ً‫ف‬ ‫مل‬ : - 1 ‫إلى‬ ‫ٌؤدي‬ ‫مما‬ ،‫المهام‬ ‫تنفٌذ‬ ‫كفاءة‬ ‫لتحسٌن‬ ‫تصمم‬ ‫التطبٌمٌة‬ ‫الخوارزمٌات‬ :‫الكفاءة‬ ‫تحسٌن‬ ‫والموارد‬ ‫الولت‬ ‫توفٌر‬ . - 2 ‫مثل‬ ‫الموارد‬ ‫استهالن‬ ‫وتملٌل‬ ،‫والنظم‬ ‫التطبٌمات‬ ‫أداء‬ ‫تحسٌن‬ ً‫ف‬ ‫تساهم‬ :‫األداء‬ ‫تحسٌن‬ ‫والمعالجة‬ ‫الذاكرة‬ . 3 - ‫فعال‬ ‫حلول‬ ‫توفٌر‬ :‫الصعبة‬ ‫المشاكل‬ ‫حل‬ ‫البحث‬ ‫مشاكل‬ ‫مثل‬ ،‫معمدة‬ ‫أو‬ ‫صعبة‬ ‫تعتبر‬ ‫لمشاكل‬ ‫ة‬ ‫والتحلٌل‬ ‫والترتٌب‬ . -4 ‫االلتصادي‬ ‫التحلٌل‬ ‫مثل‬ ‫مجاالت‬ ً‫ف‬ ‫ذكٌة‬ ‫لرارات‬ ‫التخاذ‬ ‫أسس‬ ‫تمدٌم‬ :‫المرارات‬ ‫توجٌه‬ ً‫االستراتٌج‬ ‫والتخطٌط‬ ‫المخزون‬ ‫وإدارة‬ . -5 ‫من‬ ‫العدٌد‬ ً‫ف‬ ‫والمشاكل‬ ‫التحدٌات‬ ‫لحل‬ ‫تستخدم‬ :‫والعٌة‬ ‫لمشاكل‬ ‫حال‬ ‫تمدٌم‬ ‫الحٌاتٌة‬ ‫المجاالت‬ ‫والتواصل‬ ،‫والتسوٌك‬ ،‫والمالٌة‬ ،‫الطب‬ ‫مثل‬ . ً‫ف‬ ‫المجتمع‬ ‫وتمدم‬ ‫التكنولوجٌا‬ ‫تطور‬ ‫من‬ ‫ًا‬ٌ‫أساس‬ ‫ا‬ً‫ء‬‫جز‬ ‫التطبٌمٌة‬ ‫الخوارزمٌات‬ ‫تعتبر‬ ،ً‫ا‬‫عموم‬ ‫مهمة‬ ‫مجاالت‬ ‫عدة‬ ً‫ف‬ ‫والتمنٌات‬ ‫البرمجٌات‬ ‫وتطوٌر‬ ‫لتحسٌن‬ ‫أساسٌة‬ ً‫وه‬ ،‫متنوعة‬ ‫مجاالت‬ . _ ٌ‫العمل‬ ‫سٌر‬ ‫وخرابط‬ ‫خوارزمٌات‬ ‫ات‬ : ‫رغم‬ ‫حسب‬ ‫الحسابٌة‬ ‫العملٌات‬ ‫إنجاز‬ ‫على‬ ‫بمدرته‬ ‫ٌتمٌز‬ ً‫االلكترون‬ ‫الحاسب‬ ‫أن‬ ‫و‬ ‫األوامر‬ ‫كذلن‬ ‫و‬ ‫متناهٌة‬ ‫بدلة‬ ‫و‬ ‫فابمة‬ ‫بسرعة‬ ‫له‬ ‫المعطاة‬ ‫التعلٌمات‬ ‫بإمكانٌاته‬ ‫حفظ‬ ً‫ف‬ ‫الكبٌرة‬
  • 24.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 24 0202 ‫م‬ – 5221 ‫هـ‬ ‫عن‬ ‫اإلنسان‬ ‫ٌعجز‬ ً‫الت‬ ‫المختلفة‬ ‫و‬ ‫الواسعة‬ ‫المعلومات‬ ‫و‬ ‫حفظها‬ ‫ذاكرته‬ ‫باستعمال‬ ‫استعادتها‬ ‫بحل‬ ً‫ذات‬ ‫بشكل‬ ‫ٌموم‬ ‫أن‬ ‫عن‬ ‫ٌعجز‬ ‫فهو‬ .‫العادٌة‬ ‫أي‬ ‫عمله‬ ‫أن‬ ‫أي‬ ،‫بسٌطة‬ ‫كانت‬ ‫مهما‬ ‫مسألة‬ ً‫الت‬ ‫للمسابل‬ ‫الحلول‬ ‫إنجاز‬ ً‫ف‬ ‫ٌنحصر‬ ‫تبرمج‬ ‫العلمٌة‬ ‫األسس‬ ‫مع‬ ‫ٌتوافك‬ ‫صحٌح‬ ‫بشكل‬ ‫له‬ ‫هذه‬ ‫علٌها‬ ‫تعتد‬ ً‫الت‬ ‫الصحٌحة‬ ‫الحلول‬ . ‫المس‬ ‫لحل‬ ‫الالزمة‬ ‫الضرورٌة‬ ‫الخطوات‬ ‫الفصل‬ ‫هذا‬ ً‫ف‬ ‫نستعرض‬ ‫سوف‬ ‫لذا‬ ‫ابل‬ ‫باستخدام‬ ‫خرابط‬ ‫و‬ ‫الخوارزمٌات‬ ‫لمفهوم‬ ً‫ال‬‫مفص‬ ً‫ا‬‫توضٌح‬ ‫وكذلن‬ ً‫االلكترون‬ ‫الحاسب‬ ‫سٌر‬ ‫العملٌات‬ ‫البرمجة‬ ‫لكٌفٌة‬ ً‫األساس‬ ‫العنصر‬ ‫تشكل‬ ً‫الت‬ . ٕٔ - ٕ :‫الحاسب‬ ‫باستخدام‬ ‫مسألة‬ ‫حل‬ ‫خطوات‬ ‫بإٌجاز‬ ‫نبٌنها‬ ‫خطوات‬ ‫بإتباع‬ ‫المعالجة‬ ‫تتم‬ ً‫االلكترون‬ ‫الحاسب‬ ‫باستعمال‬ ‫مسألة‬ ‫أي‬ ‫حل‬ ‫عند‬ :ً‫ٌل‬ ‫فٌما‬ • :‫المسألة‬ ‫وتحلٌل‬ ‫تعرٌف‬ ‫معروفة‬ ‫ٌجعلها‬ ‫بحٌث‬ ‫المسألة‬ ‫تطبٌك‬ ً‫ف‬ ‫التعبٌر‬ ‫دلة‬ ‫عن‬ ‫عبارة‬ ‫هو‬ ‫المسألة‬ ‫تعرٌف‬ ‫إن‬ ‫مجال‬ ‫ضمن‬ ‫العاملٌن‬ ‫األشخاص‬ ‫لجمٌع‬ ‫غموض‬ ‫أي‬ ‫وبدون‬ ‫واضحة‬ ‫بصورة‬ ‫ومفهومة‬ .‫المسألة‬ ‫له‬ ‫تخضع‬ ‫الذي‬ ‫االختصاص‬ ‫المصا‬ ‫أصعب‬ ‫فهو‬ ‫الحل‬ ‫طرٌمة‬ ‫ووضع‬ ‫المسألة‬ ‫تحلٌل‬ ‫أما‬ ‫أجل‬ ‫من‬ ‫و‬ ،‫الخطوات‬ ‫أشك‬ ‫و‬ ‫عب‬ ‫ٌجب‬ ‫المسألة‬ ‫لحل‬ ‫المناسبة‬ ‫الرٌاضٌة‬ ‫والطرق‬ ‫الموانٌن‬ ‫من‬ ‫كثٌر‬ ‫فإن‬ ‫صحٌح‬ ‫حل‬ ‫إلى‬ ‫الوصول‬ ً‫ف‬ ‫الحل‬ ‫تناسب‬ ‫لنجعلها‬ ‫والطرق‬ ‫الموانٌن‬ ‫هذه‬ ‫تطوٌر‬ ‫إلى‬ ً‫ا‬‫أٌض‬ ‫تحتاج‬ ‫لربما‬ ‫و‬ ‫تستعمل‬ ‫أن‬ :‫تحدٌد‬ ‫ٌجب‬ ‫الخطوة‬ ‫هذه‬ ً‫فف‬ ‫األحٌان‬ ‫من‬ ‫كثٌر‬ • ‫المخرجات(النتاب‬ ‫طبٌعة‬ .‫كتابتها‬ ‫تنظٌم‬ ‫و‬ )‫ج‬ • .ً‫االلكترون‬ ‫الحاسب‬ ‫إلى‬ ‫إدخالها‬ ‫تنظٌم‬ ‫و‬ ‫نوعها‬ ‫تحدٌد‬ ‫و‬ )‫المعلومات‬ ‫أو‬ ‫(البٌانات‬ ‫المدخالت‬ • ‫ضوء‬ ً‫ف‬ ‫و‬ ً‫االلكترون‬ ‫بالحاسب‬ ‫تنفٌذها‬ ‫كٌفٌة‬ ‫مع‬ ‫ٌتالءم‬ ‫بما‬ ‫تمٌٌمها‬ ‫و‬ ‫المناسبة‬ ‫الحل‬ ‫طرق‬ .‫األفضل‬ ‫الحل‬ ‫اختٌار‬ ‫ٌتم‬ ‫ذلن‬ • :ً‫ا‬ٌ‫خط‬ ‫الحل‬ ‫برمجة‬ ‫طر‬ ‫اختٌار‬ ‫بعد‬ ‫عنها‬ ‫التعبٌر‬ ‫ٌتم‬ ،‫رٌاضٌة‬ ‫عاللات‬ ‫من‬ ‫تشمله‬ ‫ما‬ ‫كل‬ ‫تحدٌد‬ ‫و‬ ‫المثالٌة‬ ‫الحل‬ ‫ٌمة‬ ‫حل‬ ‫إلى‬ ‫الوصول‬ ‫إلى‬ ‫تؤدي‬ ‫الوصف‬ ‫دلٌمة‬ ،ً‫ا‬ٌ‫منطم‬ ‫ومترابطة‬ ‫متسلسلة‬ ‫خطوات‬ ‫شكل‬ ‫على‬ ‫المسألة‬ ‫بخوارزمٌة‬ ‫تعرف‬ ‫المتسلسلة‬ ‫الخطوات‬ ‫هذه‬ ‫و‬.‫المسألة‬ Algorithm of the Problem ‫الخوارزمٌة‬ ‫هذه‬ ‫تمثٌل‬ ‫ٌمكن‬ ‫و‬ ‫المتسلسلة‬ ‫واألوامر‬ ‫التعلٌمات‬ ‫جمٌع‬ ‫إٌضاح‬ ‫بعد‬ ‫العملٌات‬ ‫سٌر‬ ‫بمخطط‬ ‫ٌدعى‬ ً‫تسلسل‬ ً‫وصف‬ ‫بمخطط‬ ‫خطوة‬ ‫كل‬ ً‫ف‬ ‫تنفٌذها‬ ‫ٌراد‬ ً‫الت‬ Flowchart ‫كلمة‬ ‫إن‬ .‫الرمزٌة‬ ‫االصطالحٌة‬ ‫األشكال‬ ‫من‬ ‫مجموعة‬ ‫باستخدام‬ ‫وذلن‬ Algorithm ‫بوضع‬ ‫لام‬ ‫الذي‬ ً‫الخوارزم‬ ‫المشهور‬ ً‫العرب‬ ‫العالم‬ ‫إلى‬ ‫نسبة‬ ‫مشتمة‬ ‫حل‬ ‫أسس‬ .ً‫تتابع‬ ‫بشكل‬ ‫المسابل‬ • :‫البرمجة‬ ‫لغات‬ ‫إحدى‬ ‫باستخدام‬ ‫الحل‬ ‫برمجة‬ ‫بالنسبة‬ ‫المالحظة‬ ‫سهل‬ ‫مساعد‬ ‫تصوري‬ ‫تخطٌط‬ ‫عن‬ ‫عبارة‬ ‫هو‬ ‫العملٌات‬ ‫سٌر‬ ‫مخطط‬ ‫إن‬ ‫بمخطط‬ ‫الممثلة‬ ‫الحل‬ ‫طرٌمة‬ ‫فإن‬ ‫لذلن‬ ،ً‫االلكترون‬ ‫الحاسب‬ ‫عند‬ ‫مفهوم‬ ‫غٌر‬ ‫لكنه‬ ‫و‬ ‫للمبرمج‬ ‫ل‬ ‫بإحدى‬ ‫تكتب‬ ‫أن‬ ‫ٌجب‬ ‫العملٌات‬ ‫سٌر‬ .‫المسألة‬ ‫حل‬ ‫مع‬ ‫تتالءم‬ ً‫الت‬ ‫و‬ ‫ٌفهمها‬ ً‫الت‬ ‫الحاسب‬ ‫غات‬ ‫و‬ ‫الحاسب‬ ‫إلى‬ ‫البرنامج‬ ‫إدخال‬ ‫و‬ ‫المناسب‬ ً‫الخارج‬ ‫الوسط‬ ‫على‬ ‫البرنامج‬ ‫كتابة‬ ‫ذلن‬ ً‫ٌل‬ ‫و‬ ‫بالبرنامج‬ ‫ٌسمى‬ ‫الرالٌة‬ ‫أو‬ ‫الرمزٌة‬ ‫اللغات‬ ‫بإحدى‬ ‫المكتوبة‬ ‫و‬ ‫الخطوة‬ ‫هذه‬ ‫من‬ ‫الناتج‬ ‫البرنامج‬ ‫المصدري‬ source program .
  • 25.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 25 0202 ‫م‬ – 5221 ‫هـ‬ • ‫ال‬ ‫ترجمة‬ :‫المصدري‬ ‫برنامج‬ ‫كتابته‬ ‫صحة‬ ‫من‬ ‫للتأكد‬ ‫الحاسب‬ ‫إلى‬ ‫إدخاله‬ ‫ٌتعٌن‬ ‫المصدري‬ ‫البرنامج‬ ‫كتابة‬ ‫من‬ ‫االنتهاء‬ ‫بعد‬ ‫وجود‬ ‫عدم‬ ‫حالة‬ ً‫ف‬ ‫الخاص‬ ‫الترجمة‬ ‫برنامج‬ ‫بواسطة‬ ‫اﻵلة‬ ‫لغة‬ ‫إلى‬ ‫لترجمته‬ ‫ثم‬ ،‫جهة‬ ‫من‬ :‫اﻵتٌة‬ ‫المراحل‬ ً‫ف‬ ‫الترجمة‬ ‫عملٌة‬ ‫تمر‬ ‫و‬ .‫المصدري‬ ‫البرنامج‬ ً‫ف‬ ‫أخطاء‬ ٔ ‫ال‬ ‫مرحلة‬ . ً‫المعجم‬ ‫تحلٌل‬ Lexical analysis : ‫المسموح‬ ‫تلن‬ ‫مع‬ ‫األسماء‬ ‫و‬ ‫والعاللات‬ ‫المصدر‬ ‫برنامج‬ ‫مفردات‬ ‫مطابمة‬ ‫ٌتم‬ ‫المرحلة‬ ‫هذه‬ ً‫ف‬ .‫فٌها‬ ‫أخطاء‬ ‫أي‬ ‫اكتشاف‬ ‫و‬ ‫اللغة‬ ً‫ف‬ ‫بها‬ ٕ ‫والنحوي‬ ‫اللغوي‬ ‫التحلٌل‬ ‫مرحلة‬ . Syntax analysis : ‫المصد‬ ‫البرنامج‬ ‫تعلٌمات‬ ‫مطابمة‬ ‫عملٌة‬ ‫تجري‬ ‫المرحلة‬ ‫هذه‬ ً‫ف‬ ‫اللغوٌة‬ ‫المواعد‬ ‫مع‬ ‫ري‬ ‫إلى‬ ‫المصدري‬ ‫البرنامج‬ ‫تحوٌل‬ ‫عملٌة‬ ‫إلى‬ ‫باإلضافة‬ ،‫فٌها‬ ‫أخطاء‬ ‫أي‬ ‫اكتشاف‬ ‫و‬ ،‫المستخدمة‬ .‫التجمٌع‬ ‫بلغة‬ ‫رمزٌة‬ ‫أوامر‬ ‫و‬ ‫تعلٌمات‬ ٖ :‫اﻵلة‬ ‫لغة‬ ‫إلى‬ ‫البرنامج‬ ‫ترجمة‬ ‫مرحلة‬. ً‫الهدف‬ ‫البرنامج‬ ‫على‬ ‫نحصل‬ ‫المرحلة‬ ‫هذه‬ ً‫ف‬ object program ‫ٌمكن‬ ‫بموجبه‬ ‫الذي‬ ‫و‬ ‫البدء‬ .‫التنفٌذ‬ ‫عملٌة‬ ً‫ف‬ • :‫تنفٌذه‬ ‫و‬ ‫البرنامج‬ ‫تجربة‬ ‫عٌنة‬ ‫باستخدام‬ ‫وذلن‬ ً‫ا‬ٌ‫منطم‬ ‫صحته‬ ‫من‬ ‫للتأكد‬ ‫تجربته‬ ‫تتم‬ ،ً‫الهدف‬ ‫البرنامج‬ ‫على‬ ‫الحصول‬ ‫بعد‬ ‫االختبارٌة‬ ‫المعطٌات‬ ‫من‬ Test Data ‫الخارجة‬ ‫النتابج‬ ‫بمطابمة‬ ‫الحل‬ ‫طرٌمة‬ ‫صحة‬ ‫ثبت‬ ‫فإذا‬ ‫علٌها‬ ‫الحصول‬ ‫تم‬ ً‫الت‬ ‫النتابج‬ ‫مع‬ ‫الحاسب‬ ‫من‬ ‫البرنامج‬ ‫تنفٌذ‬ ‫ٌمكن‬ ،‫المثال‬ ‫سبٌل‬ ‫على‬ ً‫ا‬ٌ‫ٌدو‬ .‫الحمٌمٌة‬ ‫المعطٌات‬ ‫على‬ 12-3 ‫سٌر‬ ‫خرابط‬ ‫مفهوم‬ ‫العملٌات‬ : ‫مضبوطة‬ ‫بصورة‬ ‫تصف‬ ً‫الت‬ ‫المتسلسلة‬ ‫الخطوات‬ ‫من‬ ‫مجموعة‬ ‫عن‬ ‫عبارة‬ ً‫ه‬ ‫الخوارزمٌة‬ ‫هذا‬ ‫ولكن‬ .‫ما‬ ‫مسألة‬ ‫لحل‬ ‫الالزمة‬ ‫والمنطمٌة‬ ‫الرٌاضٌة‬ ‫الخطوات‬ ‫جمٌع‬ ‫غموض‬ ‫أي‬ ‫وبدون‬ ‫سٌر‬ ‫خرٌطة‬ ‫فإن‬ ‫لذلن‬ ‫والتتبع‬ ‫المالحظة‬ ‫وصعب‬ َ‫ا‬‫معمد‬ ‫ٌكون‬ ‫األحٌان‬ ‫من‬ ‫كثٌر‬ ً‫ف‬ ‫الوصف‬ ‫تص‬ ً‫ا‬‫وصف‬ ‫تمثل‬ ً‫الت‬ ‫العملٌات‬ ‫سٌر‬ ‫وخرٌطة‬ .ً‫ا‬‫وضوح‬ ‫أكثر‬ ‫تكون‬ ‫الخوارزمٌة‬ ‫لخطوات‬ ً‫ا‬ٌ‫وٌر‬ ‫المسألة‬ ‫لحل‬ ً‫المنطم‬ ‫التسلسل‬ ‫تتبع‬ ‫مالحظة‬ ‫بواسطتها‬ ‫وٌمكن‬ ‫الخوارزمٌة‬ ‫ممام‬ ‫تموم‬ ‫العملٌات‬ ‫من‬ ‫بكثٌر‬ ‫أسهل‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫من‬ ‫الخوارزمٌة‬ ‫استخراج‬ ‫تكون‬ ‫ما‬ ً‫ا‬‫وغالب‬ ،‫سهولة‬ ‫بكل‬ .‫مباشرة‬ ‫الخوارزمٌة‬ ‫كتابة‬ ‫رسم‬ ‫عند‬ ‫و‬ ‫الرمزٌة‬ ‫األشكال‬ ‫من‬ ‫مجموعة‬ ‫نستخدم‬ ‫فإننا‬ ‫معٌنة‬ ‫لمسألة‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ :ً‫التال‬ ‫الجدول‬ ً‫ف‬ ‫المبٌنة‬ ‫االصطالحٌة‬
  • 26.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 26 0202 ‫م‬ – 5221 ‫هـ‬ ،‫ما‬ ‫لمسألة‬ ‫البرنامج‬ ‫كتابة‬ ‫لبل‬ ‫العملٌات‬ ‫سٌر‬ ‫خرابط‬ ‫استخدام‬ ‫فوابد‬ ‫أهم‬ ‫من‬ :ً‫ٌأت‬ ‫ما‬ ٔ ‫السٌطرة‬ ‫و‬ ‫حلها‬ ‫المراد‬ ‫بالمسألة‬ ‫الكامل‬ ‫اإللمام‬ ‫من‬ ‫المبرمج‬ ‫تمكن‬ . ‫بحٌث‬ ‫أجزابها‬ ‫كل‬ ‫على‬ ‫المنطمٌة‬ ‫األخطاء‬ ‫اكتشاف‬ ‫على‬ ‫تساعده‬ (Logic Error) ً‫الت‬ ‫األخطاء‬ ‫أهم‬ ‫من‬ ‫تعتبر‬ ً‫الت‬ ‫و‬ .‫المبرمج‬ ‫تجهد‬ ٕ .‫النظر‬ ‫بمجرد‬ ‫الموضوعة‬ ‫البرامج‬ ‫تعدٌل‬ ‫على‬ ‫سهولة‬ ‫و‬ ‫بٌسر‬ ‫تساعد‬ . 3. ٌ ‫إذ‬ ً‫ا‬‫مهم‬ ً‫ا‬‫أمر‬ ‫معٌنة‬ ‫مسابل‬ ‫لحلول‬ ‫العملٌات‬ ‫سٌر‬ ‫خرابط‬ ‫برسوم‬ ‫االحتفاظ‬ ‫ٌعتبر‬ ‫كون‬ ‫إلى‬ ‫الحاجة‬ ‫دون‬ ‫مشابهة‬ ‫أخرى‬ ‫مسابل‬ ‫لحل‬ ‫استخدامها‬ ‫أو‬ ‫علٌها‬ ‫تعدٌالت‬ ‫إجراء‬ ‫عند‬ ً‫ا‬‫مرجع‬ ‫بسٌطة‬ ‫واضحة‬ ‫خطوات‬ ً‫ف‬ ‫صٌغت‬ ‫لد‬ ‫األولى‬ ‫الحلول‬ ‫أن‬ ‫باعتبار‬ ‫األول‬ ‫المبرمج‬ ‫إلى‬ ‫الرجوع‬ .‫مفهومة‬ ‫و‬ ٗ .‫الكثٌرة‬ ‫التفرعات‬ ‫ذات‬ ‫البرامج‬ ‫كتابة‬ ً‫ف‬ ‫ومساعدة‬ ‫مناسبة‬ ‫وسٌلة‬ ‫توفٌر‬ . ‫تص‬ ‫ٌمكن‬ ‫و‬ ‫هذا‬ :ً‫ٌل‬ ‫بما‬ ‫العملٌات‬ ‫سٌر‬ ‫خرابط‬ ‫نٌف‬ • ‫البسٌط‬ ‫التتابع‬ ‫خرابط‬ (Simple sequential Flowchart) . • ‫التفرع‬ ‫خرابط‬ (Branched Flowchart) . • ‫البسٌط‬ ‫الدوران‬ ‫خرابط‬ (Loop Flowchart) . • ‫المتداخلة‬ ‫الدورانات‬ ‫خرابط‬ (Nested) . ‫هذ‬ ‫من‬ ‫واحد‬ ‫نوع‬ ‫من‬ ‫أكثر‬ ‫على‬ ‫ٌشتمل‬ ‫أن‬ ‫الواحد‬ ‫للبرنامج‬ ‫ٌمكن‬ ‫و‬ ‫فٌما‬ ‫سنتناول‬ ‫و‬ .‫األنواع‬ ‫ه‬ .‫التفصٌل‬ ‫من‬ ‫بشًء‬ ‫األنواع‬ ‫هذه‬ ‫شرح‬ ً‫ٌأت‬ 12-4 ‫التتابع‬ ‫خرابط‬ ‫البسٌط‬ : ‫التفرعات‬ ‫من‬ ‫النوع‬ ‫هذا‬ ‫ٌخلو‬ Branches ‫الدورانات‬ ‫و‬ loops ‫لهذا‬ ‫العام‬ ‫الشكل‬ ‫ٌكون‬ ‫و‬ ،
  • 27.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 27 0202 ‫م‬ – 5221 ‫هـ‬ ‫الشكل‬ ً‫ف‬ ‫مبٌن‬ ‫هو‬ ‫كما‬ ‫النوع‬ ٕٔ - ٔ : ‫الشكل‬ ٕٔ - ٔ ‫خرابط‬ ‫التتابع‬ ‫البسٌط‬ ‫كلمة‬ ‫و‬ Event ‫شكل‬ ً‫ف‬ ‫الواردة‬ ٕٔ - ٔ .‫تنفٌذها‬ ‫المطلوب‬ ‫العملٌة‬ ‫أو‬ ‫الحدث‬ ً‫تعن‬ ‫معلوم‬ ‫لطرها‬ ‫نصف‬ ‫دابرة‬ ‫محٌط‬ ‫و‬ ‫مساحة‬ ‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫أرسم‬ : ‫مثال‬ R . ‫تساوي‬ ‫و‬ ‫ثابتة‬ ‫العددٌة‬ ‫ولٌمتها‬ ٖ.ٔٗ ‫بٌنما‬ R .‫متغٌر‬ ‫الشكل‬ ً‫ف‬ ‫المبٌنة‬ ‫الحل‬ ‫خطوات‬ ‫وتكون‬ ٕٔ - ٕ :ً‫ٌل‬ ‫كما‬ ٔ .‫ابدأ‬. ٕ ‫ال‬. ‫لٌمة‬ ‫رأ‬ R . ٖ ‫لٌمة‬ ‫ضع‬ . 3.14=PIE ٗ ‫المساحة‬ ‫احسب‬ . (A) ‫من‬ ‫المعادلة‬ A =(PIE)*R*R . ٘ ‫المحٌط‬ ‫احسب‬ . (C) ‫من‬ ‫المعادلة‬ C =2*(PIE)*R . ٙ ‫من‬ ‫كل‬ ‫لٌم‬ ‫اطبع‬ . C, A, R . 7 .‫تولف‬ . ‫الشكل‬ ٕٔ - ٕ ‫المتغٌرات‬ ‫من‬ ‫كل‬ ‫لٌمة‬ ‫لحساب‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬:‫مثال‬ C, B, A ‫المعادلة‬ ً‫ف‬
  • 28.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 28 0202 ‫م‬ – 5221 ‫هـ‬ :‫اﻵتٌة‬ ‫من‬ ‫كل‬ ‫لٌم‬ ‫أن‬ ‫علمت‬ ‫إذا‬ Y, X ‫من‬ ‫كل‬ ‫لٌم‬ ‫اطبع‬ ‫ثم‬ ،)‫(معلومة‬ ‫معطاة‬ C, B, A, Y, X . ‫المتغٌر‬ ‫لٌمة‬ ‫حساب‬ ‫من‬ ‫ٌمكننا‬ ‫أنه‬ ‫الواضح‬ ‫من‬ :‫الحل‬ A (‫المعادلة‬ ً‫ف‬ ٔ ‫بمٌم‬ ‫لمعرفتنا‬ ) ‫األولٌة‬ ‫المعطٌات‬ Y, X ‫المتغٌر‬ ‫لٌمة‬ ‫حساب‬ ‫من‬ ‫وٌمكننا‬ ، B ( ‫المعادلة‬ ً‫ف‬ ٕ ‫باالعتما‬ ) ‫على‬ ‫د‬ ‫لٌمة‬ X ‫المتغٌر‬ ‫ولٌمة‬ ‫لدٌنا‬ ‫المعلومة‬ A ‫المتغٌر‬ ‫لٌمة‬ ‫أما‬ ،‫السابمة‬ ‫الخطوة‬ ً‫ف‬ ‫المحسوبة‬ C ً‫ف‬ ( ‫المعادلة‬ ٖ ‫المتغٌرات‬ ‫من‬ ‫كل‬ ‫لٌم‬ ‫على‬ ‫باالعتماد‬ ) B, A, X .‫معلومة‬ ‫وكلها‬ ‫الشكل‬ ً‫ف‬ ‫مبٌن‬ ‫هو‬ ‫كما‬ ‫المسألة‬ ‫حل‬ ‫خطوات‬ ‫وتكون‬ ٕٔ - ٖ :ً‫ٌل‬ ‫كما‬ ٔ .‫ابدأ‬. ٕ ‫من‬ ‫كل‬ ‫لٌمة‬ ‫الرأ‬. Y, X . ٖ ‫اح‬. ‫لٌمة‬ ‫سب‬ A ‫المعادلة‬ ‫من‬ ( ٔ .) ٗ ‫لٌمة‬ ‫احسب‬. B ‫المعادلة‬ ‫من‬ ( ٕ .) ٘ ‫لٌمة‬ ‫احسب‬. C ‫المعادلة‬ ‫من‬ ( ٖ .) ٙ ‫من‬ ‫كل‬ ‫لٌمة‬ ‫اطبع‬. C, B, A, Y, X . 7 .‫تولف‬. ‫الشكل‬ ٕٔ - ٖ ٕٔ - ٘ :‫التفرع‬ ‫خرابط‬ ،‫أكثر‬ ‫أو‬ ‫اختٌارٌن‬ ‫بٌن‬ ‫مفاضلة‬ ‫أو‬ ‫لرار‬ ‫التخاذ‬ ‫الحاجة‬ ‫بسبب‬ ‫البرامج‬ ً‫ف‬ ‫التفرع‬ ‫وٌحدث‬ ‫شكل‬ ‫المرار(انظر‬ ‫تنفٌذ‬ ً‫ف‬ ‫أسلوبان‬ ‫وهنان‬ ٕٔ - ٗ .) ‫تفرعٌن‬ ‫ذو‬ ‫لرار‬ ‫ثالثة‬ ‫ذو‬ ‫لرار‬ ‫تفرعات‬ ‫الشكل‬ ٕٔ - ٗ ‫شكل‬ ‫(انظر‬ ‫اﻵتٌتٌن‬ ‫الصورتٌن‬ ‫إحدى‬ ‫تأخذ‬ ‫أن‬ ‫ٌمكن‬ ‫التفرع‬ ‫خرابط‬ ‫فإن‬ ‫عام‬ ‫وبشكل‬ ٕٔ - ٘ ‫و‬ ‫الشكل‬ ٕٔ - ٙ .)
  • 29.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 29 0202 ‫م‬ – 5221 ‫هـ‬ ‫الشكل‬ 12-5 ‫الشكل‬ 12-6 ‫شكل‬ ‫أن‬ ‫مالحظة‬ ‫ٌمكننا‬ ٕٔ - ٘ ‫الشرط‬ ‫جواب‬ ‫كان‬ ‫إذا‬ ‫أنه‬ ‫ٌبٌن‬ YSE (Condition) ‫فإن‬ ‫الحدث‬ ‫ٌكون‬ ‫التنفٌذ‬ ً‫ف‬ ً‫التال‬ ‫الحدث‬ (a) ‫الجواب‬ ‫كان‬ ‫إذا‬ ‫أما‬ NO ‫ٌكون‬ ً‫التال‬ ‫الحدث‬ ‫فإن‬ ‫الحدث‬ (b) ‫الشكل‬ ً‫ف‬ ‫نالحظ‬ ‫أن‬ ‫ٌمكننا‬ ‫كما‬ ٕٔ - ٙ ‫الشرط‬ ‫جواب‬ ‫كان‬ ‫إذا‬ ‫أنه‬ YSE ‫الحدث‬ ‫فإن‬ ‫الحدث‬ ‫ٌكون‬ ‫التنفٌذ‬ ً‫ف‬ ً‫التال‬ (a) ‫الحدث‬ ‫ٌتبعه‬ ‫ثم‬ (b) ‫الشرط‬ ‫جواب‬ ‫كان‬ ‫إذا‬ ‫أما‬ NO ‫فإن‬ ‫الحدث‬ ‫ٌكون‬ ً‫التال‬ ‫الحدث‬ (b) .‫مباشرة‬ ‫االلتران‬ ‫لٌمة‬ ‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬:‫مثال‬ F(x) :‫التالٌة‬ ‫الماعدة‬ ‫حسب‬ ‫المعرف‬ X if X>=0 F(X) = ‫׀‬ X ‫׀‬ -X if X<0 ‫كلمة‬ ‫حٌث‬ (if) .‫عندما‬ ً‫تعن‬ ‫هنا‬ ‫الشكل‬ ً‫ف‬ ‫المبٌنة‬ ‫الحل‬ ‫خطوات‬ ٕٔ - 7 :‫تكون‬
  • 30.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 31 0202 ‫م‬ – 5221 ‫هـ‬ ٔ . ‫ابدأ‬ ٕ ‫المتغٌر‬ ‫لٌمة‬ ‫الرأ‬ . X . ٖ . ‫كانت‬ ‫إذا‬ X ‫اذهب‬ ‫ا‬ً‫صفر‬ ‫تساوي‬ ‫أو‬ ‫أكبر‬ (‫خطوة‬ ‫إلى‬ ٗ (‫الخطوة‬ ‫إلى‬ ‫فأذهب‬ ‫وإال‬ ) ٘ .) ٗ ‫من‬ ‫االلتران‬ ‫لٌمة‬ ‫احسب‬. F(X)=X ‫ثم‬ (‫الخطوة‬ ‫إلى‬ ‫اذهب‬ ٙ .) ٘ ‫من‬ ‫االلتران‬ ‫لٌمة‬ ‫احسب‬. F(x)= -X . ٙ . ‫من‬ ‫كل‬ ‫لٌمة‬ ‫اطبع‬ X ، F(x) . 7 .‫تولف‬ . ‫الشكل‬ ٕٔ - 7 ‫لٌمة‬ ‫لحساب‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬:‫مثال‬ W ‫لٌمة‬ ‫بأن‬ ‫ا‬ً‫م‬‫عل‬ ‫اﻵتٌة‬ ‫للمعادالت‬ ‫ا‬ً‫م‬‫طب‬ ‫المتغٌر‬ X :‫معلومة‬ ‫معطاة‬ ‫الشكل‬ ً‫ف‬ ‫مبٌنة‬ ً‫ه‬ ‫كما‬ ‫الحل‬ ‫خطوات‬ ٕٔ - 4 : W=
  • 31.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 30 0202 ‫م‬ – 5221 ‫هـ‬ ٔ .‫ابدأ‬ . ٕ . ‫المتغٌر‬ ‫لٌمة‬ ‫الرأ‬ X . ٖ ‫كانت‬ ‫إذا‬ . X ‫فاذهب‬ ‫صفر‬ ‫من‬ ‫أكبر‬ ‫الخطوة‬ ‫إلى‬ ٗ ‫لٌست‬ ‫كانت‬ ‫إذا‬ ‫أما‬ ‫خطوة‬ ‫إلى‬ ‫فاذهب‬ ‫من‬ ‫أكبر‬ ٘ . ٗ ‫احسب‬ . W ( ‫المعادلة‬ ‫من‬ ٔ ‫ثم‬ ) ‫الخطوة‬ ‫إلى‬ ‫اذهب‬ 4 . ٘ ‫كانت‬ ‫إذا‬ . X ‫فاذهب‬ ‫صفر‬ ‫تساوي‬ ‫الخطوة‬ ‫إلى‬ ٙ ‫إلى‬ ‫فاذهب‬ ‫وإال‬ ‫الخطوة‬ 7 . ٙ ‫احسب‬ . W ( ‫المعادلة‬ ‫من‬ ٕ ‫ثم‬ ) ‫ا‬ ‫الخطوة‬ ‫إلى‬ ‫ذهب‬ 4 . 7 ‫احسب‬ . W ( ‫المعادلة‬ ‫من‬ ٖ ‫ثم‬ ) ‫الخطوة‬ ‫إلى‬ ‫اذهب‬ 9 . 4 ‫لٌمة‬ ‫اطبع‬ . W . 9 .‫تولف‬ . ‫الشكل‬ 12-8 ٕٔ - ٙ :‫البسٌط‬ )‫(التكرار‬ ‫الدوران‬ ‫خرابط‬ ‫ًا‬‫د‬‫محدو‬ ‫ًا‬‫د‬‫عد‬ ‫البرنامج‬ ً‫ف‬ ‫العملٌات‬ ‫من‬ ‫مجموعة‬ ‫أو‬ ‫عملٌة‬ ‫إلعادة‬ ‫إلٌها‬ ‫نحتاج‬ ‫الخرابط‬ ‫وهذه‬ ‫غٌر‬ ‫أو‬ ‫الشكل‬ ‫(انظر‬ ً‫ٌل‬ ‫كما‬ ‫الخرابط‬ ‫هذه‬ ‫لمثل‬ ‫العام‬ ‫الشكل‬ ‫وٌكون‬ ،‫المرات‬ ‫من‬ ‫محدود‬ ٕٔ - 9 .) ‫الحدث‬ (a) ‫كل‬ ً‫ف‬ ‫تنفٌذه‬ ‫ٌتكرر‬ ‫الحدث‬ (a) ‫كل‬ ً‫ف‬ ‫تنفٌذه‬ ‫ٌتكرر‬
  • 32.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 32 0202 ‫م‬ – 5221 ‫هـ‬ ‫الشرط‬ ‫جواب‬ ‫ٌصبح‬ ‫حتى‬ ‫دوره‬ YES . ‫الشرط‬ ‫جواب‬ ‫كان‬ ‫طالما‬ ‫دورة‬ YES . ‫الشكل‬ ٕٔ - 9 ‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬ :‫مثال‬ ‫ألطارها‬ ‫أنصاف‬ ‫الدوابر‬ ‫من‬ ‫مجموعة‬ ‫مساحة‬ :‫معلومة‬ ‫الشكل‬ ً‫ف‬ ‫المبٌنة‬ ‫الحل‬ ‫خطوات‬ ‫تكون‬ ٕٔ - ٔٓ :ً‫ٌل‬ ‫كما‬ ٔ . .‫ابدأ‬ ٕ . ‫الدابرة‬ ‫لطر‬ ‫نصف‬ ‫الرأ‬ (R) . ٖ . ‫الدابرة‬ ‫مساحة‬ ‫أوجد‬ (A) . ٗ . ‫من‬ ‫كل‬ ‫لٌم‬ ‫اطبع‬ A, R . ٘ . ‫الدوابر؟‬ ‫من‬ ‫مزٌد‬ ‫هنان‬ ‫هل‬ (‫الخطوة‬ ‫إلى‬ ‫فعد‬ ‫نعم‬ ‫كان‬ ‫فإن‬ ٕ ‫ال‬ ‫كان‬ ‫وإن‬ ) ‫الخطوة‬ ‫إلى‬ ‫فعد‬ ( ٙ .) ٙ . .‫تولف‬ ‫الشكل‬ ٕٔ - ٔٓ 12-7 ‫العداد‬ Counter: ‫العد‬ ‫إلى‬ ً‫االلكترون‬ ‫الحاسب‬ ‫برامج‬ ً‫ف‬ ‫نحتاج‬ ‫األحٌان‬ ‫من‬ ‫كثٌر‬ ً‫ف‬ Counting ‫نرٌد‬ ‫فمد‬ ، ‫سهلة‬ ‫العملٌة‬ ‫هذه‬ ‫تكون‬ ‫ولد‬ ،‫الشعبة‬ ‫ضمن‬ ‫والطالبات‬ ‫الطالب‬ ‫من‬ ‫كل‬ ‫عدد‬ ‫نعد‬ ‫أن‬ ً‫ال‬‫مث‬ ‫ٌحتاج‬ ‫الحاسب‬ ‫أن‬ ‫إال‬ ،‫الطفولة‬ ‫من‬ ‫ٌكتسبها‬ ً‫الت‬ ‫العملٌة‬ ‫لدراته‬ ‫ضمن‬ ‫أصبحت‬ ‫ألنها‬ ‫لإلنسان‬ ‫للعد‬ ‫خوارزمٌة‬ ‫تصمٌم‬ ‫إلى‬ Counting Algorithm ‫اتبعتها‬ ‫إذا‬ ‫معٌنة‬ ‫خطوات‬ ‫تتضمن‬ ‫أن‬ ‫استطاع‬ .‫ٌعد‬ :‫األساسٌة‬ ‫الخطوات‬ ً‫ف‬ ‫العد‬ ‫من‬ ‫ٌتمكن‬ ‫حتى‬ ‫الحاسب‬ ‫ٌتبعها‬ ً‫الت‬ ‫الخطوات‬ ‫تحدٌد‬ ‫وٌمكن‬ ٔ .‫للصفر‬ ‫ًا‬ٌ‫مساو‬ ‫العداد‬ ‫اجعل‬. ٕ :‫أن‬ ‫أي‬ ،‫واحد‬ ‫زابد‬ ‫لها‬ ‫المدٌمة‬ ‫المٌمة‬ ‫تساوي‬ ‫للعداد‬ ‫الجدٌدة‬ ‫المٌمة‬ ‫اجعل‬. +)‫(المدٌمة‬ ‫العداد‬ ‫لٌمة‬ =)‫(الجدٌدة‬ ‫العداد‬ ‫لٌمة‬ ٔ ٖ ‫ابت‬ ‫الخطوات‬ ‫كرر‬. ‫الخطوة‬ ‫من‬ ‫داء‬ ٕ . ‫من‬ ‫الطبٌعٌة‬ ‫األعداد‬ ‫لطباعة‬ ‫الحاسب‬ ‫ٌتبعها‬ ً‫الت‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬ :‫مثال‬ ٔ ‫إلى‬ ٔٓٓ .‫ومربعاتها‬ ‫الشكل‬ ً‫ف‬ ‫مبٌنة‬ ‫الحل‬ ‫خطوات‬ :‫الحل‬ ٕٔ - ٔٔ :ً‫ه‬
  • 33.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 33 0202 ‫م‬ – 5221 ‫هـ‬ ٔ . .‫ابدأ‬ ٕ . ‫اجعل‬ I=0 . ٖ . ‫اجعل‬ I=I+1 . ٗ . ‫اجعل‬ . ٘ . ‫اطبع‬ J, I . ٙ . ‫كانت‬ ‫إذا‬ I=100 ‫الخطوة‬ ‫إلى‬ ‫اذهب‬ 7 ‫الخطوة‬ ‫إلى‬ ‫اذهب‬ ‫وإال‬ ٖ . 7 . .‫تولف‬ ‫الشكل‬ ٕٔ - ٔٔ ٕٔ - 4 :‫اإلجمالٌة‬ ‫المجامٌع‬ ‫من‬ ‫كبٌرة‬ ‫مجموعة‬ ‫جمع‬ ‫إلى‬ ً‫اإللكترون‬ ‫الحاسب‬ ‫برامج‬ ً‫ف‬ ‫نحتاج‬ ‫األحٌان‬ ‫من‬ ‫كثٌر‬ ً‫ف‬ ‫ألعمار‬ ً‫الحساب‬ ‫الوسط‬ ‫إٌجاد‬ ً‫ف‬ ‫نرغب‬ ‫لد‬ ً‫ال‬‫فمث‬ ،‫معٌنة‬ ‫ظاهرة‬ ‫معطٌات‬ ‫تمثل‬ ً‫الت‬ ‫األعداد‬ ‫ًا‬ٌ‫عمل‬ ‫لٌس‬ ‫ا‬ً‫ع‬‫وطب‬ ،‫الطالب‬ ‫أعمار‬ ‫مجموع‬ ‫نحسب‬ ‫أن‬ ‫ٌجب‬ ً‫ال‬‫أو‬ ‫هذا‬ ‫ولتحمٌك‬ ،‫الجامعة‬ ‫طالب‬ ‫أبجدي‬ ‫رمز‬ ‫إعطاء‬ ‫هذه‬ ‫مثل‬ ً‫ف‬ ،‫رمز‬ ‫اﻵالف‬ ‫عشرة‬ ‫من‬ ‫ألكثر‬ ‫تحتاج‬ ‫فمد‬ ‫طالب‬ ‫عمر‬ ‫لكل‬ ‫التجمٌع‬ ‫خوارزمٌة‬ ‫تسمى‬ ‫للتجمٌع‬ ‫معٌنة‬ ‫خوارزمٌة‬ ‫نصمم‬ ‫الحاالت‬ summers Algorithm ‫من‬ ‫كمٌة‬ ‫أي‬ ‫ٌجمع‬ ‫أن‬ ‫استطاع‬ ‫الحاسب‬ ‫اتبعها‬ ‫إذا‬ ‫محددة‬ ‫خطوات‬ ‫تتضمن‬ ‫ن‬ ‫الذي‬ ‫المتغٌر‬ ‫هو‬ ‫إحداهما‬ ‫اثنٌن‬ ‫متغٌرٌن‬ ‫باستخدام‬ ‫البٌانات‬ ً‫اإلجمال‬ ‫الجمع‬ ‫هو‬ ‫واﻵخر‬ ‫جمعه‬ ‫خطوات‬ ‫أربع‬ ً‫ف‬ ‫ذلن‬ ‫لتحمٌك‬ ‫الحاسب‬ ‫ٌتبعها‬ ‫أن‬ ‫ٌجب‬ ً‫الت‬ ‫الخطوات‬ ‫تحدٌد‬ ‫وٌمكن‬ ،)‫(المجمع‬ :ً‫ه‬ ٔ .‫الصفر‬ ‫ًا‬ٌ‫مساو‬ ‫المجمع‬ ‫اجعل‬ . ٕ .‫للمتغٌر‬ ‫واحدة‬ ‫لٌمة‬ ‫ادخل‬ . ٖ ،‫للمتغٌر‬ ‫المدخلة‬ ‫المٌمة‬ ‫زابد‬ ‫له‬ ‫المدٌمة‬ ‫المٌمة‬ ‫تساوي‬ ‫للمجمع‬ ‫الجدٌدة‬ ‫المٌمة‬ ‫اجعل‬ . :‫أن‬ ‫أي‬ .‫للمتغٌر‬ ‫مدخلة‬ ‫لٌمة‬ ‫آخر‬ + ‫المدٌمة‬ ‫المجمع‬ ‫الجدٌدة=لٌمة‬ ‫المجمع‬ ‫لٌمة‬ ٗ .‫الثانٌة‬ ‫الخطوة‬ ‫من‬ ‫ا‬ً‫ء‬‫ابتدا‬ ‫كرر‬ . .‫شعبتن‬ ‫طالب‬ ‫ألعمار‬ ً‫الحساب‬ ‫الوسط‬ ‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬:‫مثال‬ = ‫الطالب‬ ‫عدد‬ ً‫إجمال‬ ‫أن‬ ‫نفترض‬ :‫الحل‬ N ‫بالرمز‬ ‫له‬ ‫ونرمز‬ ‫طالب‬ ‫كل‬ ‫لرلم‬ ‫ًا‬‫د‬‫عد‬ ‫ونستخدم‬ I ‫ب‬ ‫الطالب‬ ‫لعمر‬ ‫ونرمز‬ X ‫بالرمز‬ ‫له‬ ‫ونرمز‬ ‫الطلبة‬ ‫ألعمار‬ ‫ا‬ً‫ع‬‫مجم‬ ‫ونستخدم‬ S ‫الرمز‬ ‫ونستخدم‬ A .‫الطلبة‬ ‫أعمار‬ ‫معدل‬ ‫على‬ ‫لٌدل‬ ‫الشكل‬ ً‫ف‬ ‫مبٌن‬ ‫هو‬ ‫كما‬ ‫الحل‬ ‫خطوات‬ ‫وتكون‬ ٕٔ - ٕٔ :ً‫ه‬
  • 34.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 34 0202 ‫م‬ – 5221 ‫هـ‬ ٔ . .‫ابدأ‬ ٕ . ‫الطالب‬ ‫عدد‬ ً‫إجمال‬ ‫ادخل‬ (N) . ٖ . ‫اجعل‬ I=0 . ٗ . ‫اجعل‬ S=0 . ٘ . ‫اجعل‬ I=I+1 . ٙ . ‫ادخل‬ X . 7 . ‫اجعل‬ S=S+X . 4 . ‫كانت‬ ‫إذا‬ I=N ‫الخطوة‬ ‫إلى‬ ‫اذهب‬ 9 ‫الخطوة‬ ‫إلى‬ ‫اذهب‬ ‫وإال‬ ٘ . 9 . ‫اجعل‬ A=S/N . ٔٓ . .‫تولف‬ ‫الشكل‬ ٕٔ - ٕٔ ٕٔ - 9 :‫المتدخلة‬ ‫الدورانات‬ ‫خرابط‬ ‫الدورانات‬ ‫تكون‬ ‫الحالة‬ ‫هذه‬ ً‫ف‬ ً‫ال‬‫مث‬ ‫لدٌنا‬ ‫كان‬ ‫فإذا‬ ‫تتماطع‬ ‫ال‬ ‫بحٌث‬ ‫البعض‬ ‫بعضها‬ ‫داخل‬ ‫شكل‬ ‫(انظر‬ ‫النوع‬ ‫هذا‬ ‫من‬ ‫دورانان‬ ٕٔ - ٖٔ ( ‫لم‬ ‫الدوران‬ ‫فٌسمى‬ ٔ ‫ًا‬ٌ‫داخل‬ ‫ا‬ً‫ن‬‫دورا‬ ) (Inner Loop) ( ‫رلم‬ ‫الدوران‬ ‫بٌنما‬ ٕ ‫ًا‬ٌ‫خارج‬ ‫ا‬ً‫ن‬‫دورا‬ ) (Outer Loop ‫مثل‬ ً‫عمل‬ ً‫ف‬ ‫التناسك‬ ‫وٌتم‬ :‫بحٌث‬ ‫الدورانٌن‬ ‫هذٌن‬ ‫التنفٌذ‬ ‫أولوٌة‬ ‫تكون‬ .ً‫الداخل‬ ‫للدوران‬ ‫الشكل‬ ٕٔ - ٖٔ
  • 35.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 35 0202 ‫م‬ – 5221 ‫هـ‬ ‫عن‬ ‫ٌزٌد‬ ‫منها‬ ‫كل‬ ‫طول‬ ‫الخشبٌة‬ ‫المطع‬ ‫من‬ ‫مجموعة‬ ‫تمطٌع‬ ً‫ف‬ ‫نجار‬ ‫ٌرغب‬ :‫مثال‬ ٖ ‫إلى‬ ‫متر‬ ‫ٌساوي‬ ‫منها‬ ‫الواحدة‬ ‫طول‬ ‫صغٌرة‬ ‫لطع‬ ٖ .‫متر‬ .‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬ ‫شكل‬ ً‫ف‬ ‫المبٌنة‬ ‫الحل‬ ‫خطوات‬ ٕٔ - ٔٗ :ً‫ه‬ ٔ . .‫ابدأ‬ ٕ . .‫لطعة‬ ‫خذ‬ ٖ . ‫طولها‬ ‫لطعة‬ ‫منها‬ ‫الطع‬ ٖ .‫متر‬ ٗ . ‫عن‬ ‫ٌزٌد‬ ً‫المتبم‬ ‫هل‬ ٖ ‫متر؟‬ (‫الخطوة‬ ‫إلى‬ ‫فاذهب‬ ‫نعم‬ ‫الجواب‬ ‫كان‬ ‫إذا‬ ٖ ‫كان‬ ‫وإذا‬ .) ( ‫الخطوة‬ ‫إلى‬ ‫فاذهب‬ ‫ال‬ ‫الجواب‬ ٘ .) ٘ . ‫كان‬ ‫إن‬ ‫؟‬ ‫تمطٌعها‬ ‫المراد‬ ‫المطع‬ ‫من‬ ‫مزٌد‬ ‫هنان‬ ‫هل‬ (‫الخطوة‬ ‫إلى‬ ‫فاذهب‬ ‫نعم‬ ‫الجواب‬ ٕ ‫فاذهب‬ ‫ال‬ ‫كان‬ ‫وإن‬ ) (‫الخطوة‬ ‫إلى‬ ٙ .) ٙ . .‫تولف‬ ‫الشكل‬ ‫من‬ ‫ٌالحظ‬ :‫ملحوظة‬ ٕٔ - ٔٗ ‫أن‬ ً‫الداخل‬ ‫الدوران‬ ‫منها‬ ‫كل‬ ‫طول‬ ‫متعددة‬ ‫لطع‬ ‫إلى‬ ‫الواحدة‬ ‫المطعة‬ ‫تمطٌع‬ ‫ٌتضمن‬ ٖ ‫جدٌدة‬ ‫واحدة‬ ‫لطعة‬ ‫تناول‬ ً‫الخارج‬ ‫الدوران‬ ‫ٌمثل‬ ‫بٌنما‬ ‫متر‬ .ً‫الداخل‬ ‫الدوران‬ ‫إجراءات‬ ‫علٌها‬ ‫لتنفذ‬ ‫الشكل‬ ٕٔ - ٔٗ ٕٔ - ٔٓ :ً‫االصطالح‬ ‫الشكل‬ ‫باستعمال‬ ‫الدوران‬ ‫صٌغة‬ ‫اﻵن‬ ‫وٌمكننا‬ ‫الضمنٌة‬ ‫والدورانات‬ ‫البسٌط‬ ‫الدوران‬ ‫مفهوم‬ ‫السابمتٌن‬ ‫الفمرتٌن‬ ً‫ف‬ ‫عرفنا‬ ‫لمد‬ :ً‫التال‬ ‫النحو‬ ‫على‬ ‫والوارد‬ ‫للدوران‬ ً‫االصطالح‬ ‫الشكل‬ ‫استخدم‬ ‫الشكل‬ ٕٔ - ٔ٘
  • 36.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 36 0202 ‫م‬ – 5221 ‫هـ‬ ‫الشكل‬ ً‫ف‬ ‫نالحظ‬ ٕٔ - ٔ٘ :‫اﻵتٌة‬ ‫العناصر‬ ‫إلى‬ ‫نحتاج‬ ‫أننا‬ • ‫للعداد‬ ‫األولٌة‬ ‫المٌمة‬ I ‫(هنا‬ (I=1 . • ‫للعداد‬ ‫النهابٌة‬ ‫المٌمة‬ I ‫(هنا‬ I=1 .) • ‫للعداد‬ ‫النهابٌة‬ ‫المٌمة‬ I ‫(هنا‬ n .) • ‫دورة‬ ‫كل‬ ‫نهاٌة‬ ‫عند‬ ‫الزٌادة‬ ‫لٌمة‬ . ‫الشكل‬ ً‫ف‬ ‫نالحظ‬ ٕٔ - ٔ٘ ‫من‬ ‫والمفصلة‬ ‫اﻵتٌة‬ ‫للخطوات‬ ً‫ا‬‫طبم‬ ‫تتم‬ ‫كانت‬ ‫الدوران‬ ‫إجراءات‬ ‫إن‬ :‫المبرمج‬ ‫لبل‬ ٔ ‫أعط‬ . I .‫أولٌة‬ ‫لٌمة‬ ٕ .‫إعادتها‬ ‫المطلوب‬ ‫اإلجراءات‬ ‫أتم‬ . ٖ ‫العداد‬ ‫لٌمة‬ ‫كانت‬ ‫إذا‬ )‫(تمرٌر‬ . 1 ‫النهابٌة‬ ‫المٌمة‬ ‫إلى‬ ‫وصلت‬ n ً‫ف‬ ‫التالٌة‬ ‫الخطوة‬ ‫إلى‬ ‫اخرج‬ ( ‫الخطوة‬ ‫إلى‬ ‫فاذهب‬ ‫وإال‬ ‫البرنامج‬ ٗ .) ٗ ‫زد‬ . I ‫الزٌادة‬ ‫بممدار‬ . ٘ ( ‫الخطوة‬ ‫إلى‬ ‫عد‬ . ٕ .) ‫المفصلة‬ ‫الخطوات‬ ‫استبدال‬ ‫ٌمكننا‬ ‫الشكل‬ ً‫ف‬ ٕٔ - ٔ٘ ‫بخط‬ ً‫ف‬ ‫مبٌنة‬ ‫واحدة‬ ‫مجملة‬ ‫وة‬ ‫شكل‬ ‫للدوران‬ ً‫االصطالح‬ ‫الشكل‬ ٕٔ - ٔ٘ ‫لبل‬ ‫من‬ ‫أوتوماتٌكٌة‬ ‫بصورة‬ ‫الخطوات‬ ‫هذه‬ ‫تنفذ‬ ‫حٌث‬ ‫وتجنب‬ ‫البرنامج‬ ً‫ف‬ ‫التعلٌمات‬ ‫عدد‬ ‫واختصار‬ ‫البرمجة‬ ‫عملٌة‬ ‫تسهٌل‬ ‫شأنه‬ ‫من‬ ‫وهذا‬ ،‫الحاسب‬ .‫األخطاء‬ ‫بعض‬ ‫لٌمة‬ ‫تعتبر‬ :‫ملحوظة‬ ‫تساوي‬ ٔ ‫بخال‬ ‫أخرى‬ ‫لٌمة‬ ‫تعط‬ ‫لم‬ ‫إذا‬ ‫ا‬ً‫م‬‫داب‬ ‫ذكر‬ ‫عدم‬ ‫حالة‬ ً‫وف‬ ،‫ذلن‬ ‫ف‬ ‫لٌمة‬ ‫الشكل‬ ً‫ف‬ ‫الوارد‬ ً‫االصطالح‬ ‫الشكل‬ ‫ٌصبح‬ ٕٔ - ٔ٘ ‫لٌمة‬ ‫تكون‬ ‫حٌث‬ ً‫ٌل‬ ‫كما‬ ‫تساوي‬ ٔ .‫أوتوماتٌكٌة‬ ‫وبصورة‬ ‫الشكل‬ ٕٔ - ٔٙ ‫الشكل‬ ً‫ف‬ ‫الموضح‬ ‫مثال‬ ‫حل‬ ‫أعد‬ :‫مثال‬ ٕٔ - ٔٔ ‫مساحة‬ ‫إلٌجاد‬ n ‫الشكل‬ ‫باستخدام‬ ‫الدوابر‬ ‫من‬ .‫للدوران‬ ً‫االصطالح‬ ً‫ه‬ ‫كما‬ ‫الحل‬ ‫خطوات‬ ‫الشكل‬ ً‫ف‬ ‫مبٌنة‬ ٕٔ - ٔ7 .
  • 37.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 37 0202 ‫م‬ – 5221 ‫هـ‬ ‫الشكل‬ 12-17 ‫إلٌجاد‬ ‫العملٌات‬ ‫سٌر‬ ‫خرٌطة‬ ‫ارسم‬ N! . :‫الحل‬ N!=N (N-1) (N-2) …3*2*1 . ‫الشكل‬ ً‫ف‬ ‫مبٌنة‬ ً‫ه‬ ً‫ٌل‬ ‫كما‬ ‫الحل‬ ‫فخطوات‬ ٕٔ - ٔ4 : ‫الشكل‬ 12-18
  • 38.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 38 0202 ‫م‬ – 5221 ‫هـ‬ ‫اإلنترنت‬ ‫عالم‬ ً‫ف‬ ‫تتحكم‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫عن‬ ‫أسرار‬ ‫سبعة‬ : - ‫فراي‬ ‫هانا‬ ‫الكاتبة‬ ‫العام‬ ‫هذا‬ ‫السنوٌة‬ ‫المٌالد‬ ‫أعٌاد‬ ‫محاضرة‬ ً‫ف‬ ً‫البرٌطان‬ ً‫الملك‬ ‫المعهد‬ ‫ّف‬ٌ‫ُض‬ٌ ‫فٌه‬ ‫اختٌاراتنا‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫ودور‬ ‫خضمه‬ ً‫ف‬ ‫نعٌش‬ ‫الذي‬ ‫المعلومات‬ ‫عالم‬ ‫عن‬ ‫لتتحدث‬ .‫حٌاتنا‬ ً‫ف‬ ‫تأثٌرها‬ ‫ومدى‬ ،‫أبٌت‬ ‫أم‬ ‫شبت‬ ‫لكنها‬ ،‫وجدتها‬ ‫أٌنما‬ ‫الخٌال‬ ‫تثٌر‬ ً‫الت‬ ‫الكلمات‬ ‫تلن‬ ‫من‬ "‫"خوارزمٌات‬ ‫كلمة‬ ‫تبدو‬ ‫ال‬ .‫المعاصر‬ ‫عالمنا‬ ً‫ف‬ ‫راسخة‬ ‫وباتت‬ ‫لتبمى‬ ‫ولدت‬ ‫كلمة‬ ‫على‬ ‫كثٌرا‬ ‫ُستخدم‬ٌ .‫المتنالضات‬ ‫من‬ ‫غرٌبة‬ ‫حزمة‬ ‫ٌمثل‬ ‫الخوارزمٌات‬ ‫إن‬ ‫سألول‬ ،ً‫سألتن‬ ‫وإذا‬ ‫مرة‬ ‫كل‬ ً‫ف‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ،‫اإلنترنت‬ .‫النت‬ ‫على‬ ‫شًء‬ ‫عن‬ ‫فٌها‬ ‫تبحث‬ ‫االنتشار‬ ‫واسعة‬ ً‫وه‬ .‫نفسه‬ ‫الولت‬ ً‫ف‬ ‫غرٌبة‬ ‫تظل‬ ‫ولكنها‬ ،‫الغالب‬ ً‫ف‬ ‫مألوفة‬ ‫والخوارزمٌات‬ ‫ما‬ ‫بشكل‬ ‫تستطٌع‬ ‫أنها‬ ‫مع‬ ،‫مجتمعنا‬ ‫مظاهر‬ ‫كل‬ ً‫ف‬ ،‫افتراضٌا‬ ،‫عمٌما‬ ‫تأثٌرا‬ ‫وتملن‬ .‫مربٌة‬ ‫وغٌر‬ .‫للدهشة‬ ‫مثٌر‬ ‫بشكل‬ ‫التجاهل‬ ‫سهلة‬ ‫تكون‬ ‫أن‬ ‫ب‬ ‫لها‬ ‫تجاهل‬ ‫ال‬ ‫ولكن‬ ‫الجدٌد‬ ‫العالم‬ ‫هذا‬ ً‫ف‬ ‫اإلبحار‬ ً‫ف‬ ‫ٌساعدن‬ ‫مبسط‬ ‫دلٌل‬ ‫وإلٌن‬ ،‫الٌوم‬ ‫عد‬ ..‫المذهل‬ 5 - ‫الخوارزميات؟‬ ‫هي‬ ‫ما‬ ‫تأخذ‬ .‫الطعام‬ ‫إعداد‬ ‫وصفة‬ ‫مثل‬ ،‫التعلٌمات‬ ‫من‬ ‫سلسلة‬ ‫بوصفها‬ ‫الخوارزمٌات‬ ‫إلى‬ ‫النظر‬ ‫ُمكنن‬ٌ ٌ‫النها‬ ً‫ف‬ ‫الجدٌدة‬ ‫الحصٌلة‬ ‫من‬ ‫ما‬ ‫نوع‬ ‫على‬ ‫لتحصل‬ ‫معا‬ ‫وتخلطها‬ ‫المكونات‬ ‫من‬ ‫حزمة‬ .‫ة‬ ‫مسح‬ ‫أو‬ ،‫االنترنت‬ ‫على‬ ‫بحثن‬ ‫مصطلحات‬ ‫ربما‬ :‫البٌانات‬ ‫من‬ ‫نوعا‬ ‫دابما‬ ‫تكون‬ ‫لد‬ ‫المكونات‬ ‫وهذه‬ .‫النت‬ ‫من‬ ‫حملتها‬ ً‫الت‬ ‫الموسٌمٌة‬ ‫للممطوعات‬ ‫طوٌلة‬ ‫لابمة‬ ‫أو‬ ،‫وجهن‬ ‫لمالمح‬ ،‫غوغل‬ ‫البحث‬ ‫محرن‬ ً‫ف‬ ‫لن‬ ‫تظهر‬ ً‫الت‬ ‫األولى‬ ‫كالصفحة‬ :‫جمٌعا‬ ‫ندركها‬ ‫أشٌاء‬ ً‫فه‬ ‫نتابجها‬ ‫أما‬ ‫هاتفن‬ ‫فتح‬ ‫أو‬ ‫على‬ ‫تشاهدها‬ ‫جدٌدة‬ ‫ممترحات‬ ‫حزمة‬ ‫أو‬ ،‫وجهن‬ ‫مالمح‬ ‫على‬ ‫التعرف‬ ‫عبر‬ ‫النمال‬ .‫للموسٌمى‬ ‫سبوتٌفاي‬ ‫مولع‬ 0 - ‫الخوارزميات؟‬ ‫يستخدم‬ ‫من‬ ً‫شخص‬ ‫طابع‬ ‫وإضفاء‬ ‫بحث‬ ‫فٌها‬ ‫ٌجري‬ ً‫الت‬ ،‫اإلنترنت‬ ‫على‬ ‫مكان‬ ‫كل‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫تجد‬ ‫اإل‬ ‫على‬ ‫التسوق‬ ‫من‬ ،)‫الشخصٌة‬ ‫االختٌارات‬ ‫(تحدٌد‬ ‫االختٌارات‬ ‫على‬ ‫البث‬ ‫خدمات‬ ‫إلى‬ ‫نترنت‬ ‫ستخدم‬ُ‫ت‬ ‫الخوارزمٌات‬ ‫أن‬ ‫بٌد‬ .)‫اإلنترنت‬ ‫عبر‬ ‫وغٌرها‬ ‫واألفالم‬ ‫الموسٌمى‬ ‫بث‬ ‫(خدمة‬ ‫المتدفك‬ ‫بمصادر‬ ‫االستعانة‬ ً‫ف‬ ‫الناس‬ ‫بدأ‬ ،‫الماضٌة‬ ‫الملٌلة‬ ‫السنوات‬ ً‫ف‬ .‫بكثٌر‬ ‫ذلن‬ ‫من‬ ‫أوسع‬ ‫بشكل‬ .‫اإلنسانٌة‬ ‫المجاالت‬ ‫مختلف‬ ً‫ف‬ ‫المرارات‬ ‫التخاذ‬ ‫األتمتة‬ ‫واستخدام‬ ‫خارجٌة‬ ً‫وف‬ ،‫المناسب‬ ‫الحكم‬ ‫اتخاذ‬ ً‫ف‬ ‫المضاة‬ ‫تساعد‬ ،‫المحاكم‬ ‫لاعات‬ ً‫ف‬ ‫الٌوم‬ ‫الخوارزمٌات‬ ‫فتجد‬ ‫المستشفٌات‬ ً‫وف‬ ،‫العبٌهم‬ ‫لتدرٌب‬ ‫أسلوب‬ ‫أفضل‬ ‫الختٌار‬ ‫المدربٌن‬ ‫تساعد‬ ‫المدم‬ ‫كرة‬ ‫نوادي‬ ‫الشركات‬ ً‫وف‬ ،‫لمرضاهم‬ ‫سٌمدمونه‬ ‫الذي‬ ‫العالج‬ ‫نوع‬ ‫بشأن‬ ‫لرارات‬ ‫التخاذ‬ ‫األطباء‬ ‫لمساعدة‬ ‫ف‬ ‫للمساعدة‬ .ً‫أساس‬ ‫بشكل‬ ‫مكان‬ ‫كل‬ ً‫ف‬ ‫تنتشر‬ ً‫فه‬ .‫العمل‬ ‫سٌمنح‬ ‫ومن‬ ‫الجدد‬ ‫الموظفٌن‬ ‫اختٌار‬ ً 3 - ‫؟‬ ً‫ء‬‫أخطا‬ ‫ترتكب‬ ‫هل‬
  • 39.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 39 0202 ‫م‬ – 5221 ‫هـ‬ ‫أنها‬ ً‫ف‬ ‫شن‬ ‫ال‬ ‫لكن‬ ،‫مذهلة‬ ‫التارٌخٌة‬ ‫الجدٌدة‬ ‫األدوات‬ ‫هذه‬ ‫عبر‬ ‫إنجازها‬ ‫ٌمكن‬ ً‫الت‬ ‫الحصٌلة‬ ‫إن‬ .‫الكمال‬ ‫عن‬ ‫بعٌدة‬ ‫وصلتهم‬ ‫أشخاص‬ ‫تجارب‬ ً‫ف‬ ،‫شًء‬ ‫كل‬ ‫بعد‬ ،‫واضحا‬ ‫ٌبدو‬ ‫لد‬ ‫وهذا‬ ‫ٌطلبوا‬ ‫لم‬ ‫سلع‬ ‫عن‬ ‫توصٌات‬ ‫تصل‬ ‫ال‬ ‫الخوارزمٌات‬ ‫أن‬ ‫ٌعرفون‬ ‫فباتوا‬ ،‫مشاهدته‬ ‫ٌطلبوا‬ ‫لم‬ ‫فٌلم‬ ‫عن‬ ‫أو‬ ‫اإلنترنت‬ ‫على‬ ‫شراءها‬ ‫تذكر‬ ‫تماما‬ ‫علٌنا‬ ‫الصعب‬ ‫من‬ ،‫بأخرى‬ ‫أو‬ ‫بطرٌمة‬ ‫ولكن‬ .‫الدوام‬ ‫على‬ ‫صحٌح‬ ‫بشكل‬ ‫األشٌاء‬ ‫إلى‬ ‫الت‬ ‫لنا‬ ‫تمدمها‬ ً‫الت‬ ‫المشرلة‬ ‫الوعود‬ ‫إلى‬ ‫منجذبون‬ ‫ونحن‬ ‫الحمٌمة‬ ‫هذه‬ .‫الجدٌدة‬ ‫كنولوجٌا‬ ‫اإللكترونٌة‬ ‫البطالات‬ ‫مفاتٌح‬ ‫استخدام‬ ‫الغاء‬ ً‫ف‬ ‫ٌنظر‬ ‫الفنادق‬ ‫بعض‬ ‫أن‬ ‫إلى‬ ‫تشٌر‬ ‫تمارٌر‬ ‫ثمة‬ ‫إلى‬ ‫بالدخول‬ ‫الفندق‬ ً‫ف‬ ‫للنزالء‬ ‫ٌسمح‬ ‫كمفتاح‬ ‫الوجه‬ ‫على‬ ‫التعرف‬ ‫بتمنٌة‬ ‫عنها‬ ‫واالستعاضة‬ .‫غرفهم‬ ‫لنحو‬ ‫الطرٌمة‬ ‫هذه‬ ‫استخدمت‬ ‫لو‬ ‫وحتى‬ 9ٓ ‫نح‬ ‫سٌظل‬ ،‫الولت‬ ‫من‬ ‫المبة‬ ً‫ف‬ ً‫ف‬ ‫زبابن‬ ‫عشرة‬ ‫و‬ ‫ال‬ ‫عندما‬ ‫للمساعدة‬ ‫طلبا‬ ‫الممرات‬ ً‫وف‬ ‫الساللم‬ ‫على‬ ‫وٌنزلون‬ ‫ٌصعدون‬ ‫الغرف‬ ‫مبات‬ ‫ٌضم‬ ‫فندق‬ ‫بالتأكٌد‬ ‫األفضل‬ ‫الخٌار‬ ‫هذا‬ ‫ولٌس‬ .‫وجوههم‬ ‫على‬ ‫التعرف‬ ‫تمنٌة‬ ‫على‬ ‫اعتمادا‬ ‫غرفهم‬ ‫أبواب‬ ‫تفتح‬ .‫فندق‬ ً‫ف‬ ‫مسترخٌة‬ ‫أللامة‬ ،‫خطٌرة‬ ‫عوالب‬ ‫عن‬ ‫تسفر‬ ‫لد‬ ‫األخطاء‬ ‫هذه‬ ‫مثل‬ ‫أن‬ ‫بٌد‬ ‫استخدمت‬ ‫إذا‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ،‫وتوزٌعها‬ ‫معٌنة‬ ‫فوابد‬ ‫لتخصٌص‬ ‫أو‬ ،‫ما‬ ‫عمل‬ ‫إلى‬ ‫لمتمدمٌن‬ ‫المهنٌة‬ ‫السٌر‬ ‫لتصفٌة‬ ‫الخوارزمٌات‬ ‫حٌاة‬ ‫على‬ ‫كبٌرا‬ ‫تأثٌرا‬ ‫تترن‬ ‫أن‬ ‫تجنبها‬ ‫ٌمكن‬ ‫ال‬ ً‫الت‬ ‫لألخطاء‬ ‫ٌمكن‬ ‫إذ‬ ،‫المعلمٌن‬ ‫أداء‬ ‫لتمٌٌم‬ ‫أو‬ ‫المبالغ‬ ‫الثمة‬ ‫على‬ ‫معتادٌن‬ ‫نكون‬ ‫عندما‬ ‫سٌما‬ ‫ال‬ .‫الناس‬ .‫والتمنٌة‬ ‫الكومبٌوتر‬ ‫بمرارات‬ ‫بها‬ ‫ة‬ 2 - ‫إلغاءها‬ ‫الصعب‬ ‫من‬ ‫أن‬ ‫نجد‬ ‫نهاٌة‬ ‫االنتباه‬ ‫ٌستحك‬ ‫األلمار‬ ‫عبر‬ ‫المولع‬ ‫تحدٌد‬ ‫أو‬ ‫المالحة‬ ‫برامج‬ ‫تعلٌمات‬ ‫تتبعوا‬ ‫أناس‬ ‫عن‬ ‫لصصا‬ ‫جمٌعا‬ ‫سمعنا‬ ‫جرف‬ ‫حافة‬ ‫عند‬ ‫أو‬ ‫النهاٌة‬ ‫مغلك‬ ‫طرٌك‬ ً‫ف‬ ‫أما‬ ‫حابرٌن‬ ‫الولوف‬ ‫إلى‬ ‫وانتهوا‬ ‫االصطناعٌة‬ ‫على‬ ‫صخري‬ .‫البحر‬ ً‫ف‬ ،‫أنفسنا‬ ‫مع‬ ‫أمٌنٌن‬ ‫نكون‬ ‫أن‬ ‫هنا‬ ‫المهم‬ ‫من‬ ‫ولكن‬ ‫األخطاء‬ ‫هذه‬ ‫مثل‬ ‫على‬ ‫بسهولة‬ ‫نضحن‬ ‫لد‬ .‫التكنولوجٌا‬ ‫استخدام‬ ‫على‬ ‫اعتمادنا‬ ‫تجنب‬ ‫الصعب‬ ‫من‬ ‫أنه‬ ‫االعتماد‬ ‫تنتج‬ ‫أن‬ ‫ٌمكن‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫استخدام‬ ً‫ف‬ ‫تبدأ‬ ‫عندما‬ ‫حما‬ ‫خطٌرة‬ ‫مشكلة‬ ‫تشكل‬ ‫أن‬ ‫ٌمكن‬ ‫وتلن‬ ٌ‫ف‬ ‫تكون‬ ‫خاطبة‬ ‫حاالت‬ .‫المحن‬ ‫على‬ ‫أناس‬ ‫حٌوات‬ ‫ها‬ ‫خاص‬ ‫بشكل‬ ‫للجدل‬ ‫المثٌرة‬ ‫االستخدامات‬ ‫من‬ ‫واحدا‬ ،‫الحصر‬ ‫ال‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ‫خذ‬ ‫باحتماالت‬ ‫الخوارزمٌات‬ ‫وتتنبأ‬ ،‫جرٌمة‬ ‫بارتكاب‬ ‫المحكمة‬ ً‫ف‬ ‫شخص‬ ‫ُتهم‬ٌ ‫عندما‬ ،‫للخوارزمٌات‬ ‫المحاكم‬ ً‫ف‬ ‫المضاة‬ ‫ٌستخدمه‬ ‫التولع‬ ً‫ف‬ ‫األسلوب‬ ‫هذا‬ ‫ومثل‬ .‫أخرى‬ ‫مرة‬ ‫الجرٌمة‬ ‫الرتكاب‬ ‫عودته‬ ‫الت‬ ‫العالم‬ ‫حول‬ ‫التخاذ‬ ‫الحاالت‬ ‫بعض‬ ً‫وف‬ ،‫ال‬ ‫أو‬ ‫بكفالة‬ ‫علٌه‬ ‫المدعى‬ ‫عن‬ ‫اإلفراج‬ ‫بشأن‬ ‫لرار‬ ‫خاذ‬ .‫المتهم‬ ‫حكم‬ ‫مدة‬ ‫بشأن‬ ‫لرار‬ ‫سٌحدث‬ ‫بما‬ ‫التنبؤ‬ ‫حسن‬ُ‫ت‬ ‫لم‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫أن‬ ‫األكادٌمٌٌن‬ ‫بعض‬ ‫أظهر‬ ،ً‫الماض‬ ‫العام‬ ً‫ف‬ ‫المعلوم‬ ‫بالناس‬ ‫ممتلبة‬ ‫لاعة‬ ‫إعطاء‬ ‫من‬ ‫أفضل‬ ‫بطرٌمة‬ ،‫المستمبل‬ ً‫ف‬ ‫علٌه‬ ‫للمدعى‬ ‫ذاتها‬ ‫ات‬ .‫ال‬ ‫أم‬ ‫أخرى‬ ‫جرٌمة‬ ‫سٌرتكب‬ ‫علٌه‬ ‫المدعى‬ ‫أن‬ ‫هل‬ ‫تخمٌن‬ ‫منهم‬ ‫والطلب‬
  • 40.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 41 0202 ‫م‬ – 5221 ‫هـ‬ ‫لكن‬ ،‫المحكمة‬ ‫لاعة‬ ً‫ف‬ ‫للخوارزمٌات‬ ‫مكان‬ ‫ثمة‬ ‫أنه‬ ‫إلى‬ ‫سنشٌر‬ ،‫المٌالد‬ ‫أعٌاد‬ ‫محاضرة‬ ً‫وف‬ ،ً‫للماض‬ ‫بالنسبة‬ ‫تجاهله‬ ‫األصعب‬ ‫ما‬ :ً‫ف‬ ‫تتمثل‬ ‫هنا‬ ‫المشكلة‬ ‫ألن‬ ،‫وحذر‬ ‫بعناٌة‬ ‫استخدامها‬ ‫ٌجب‬ ‫جها‬ ‫من‬ ‫تولع‬ ‫هو‬ ‫هل‬ ‫الناس‬ ‫من‬ ‫مجموعة‬ ‫من‬ ‫تخمٌن‬ ‫مجرد‬ ‫أم‬ ،ً‫االصطناع‬ ‫الذكاء‬ ‫ٌعتمد‬ ‫غال‬ ‫ز‬ .‫تماما‬ ‫الغرباء‬ 1 - ‫شخص‬ ‫لكل‬ ‫نفسه‬ ‫الخطأ‬ ‫ترتكب‬ ‫ال‬ .‫منحازة‬ ‫تكون‬ ‫لن‬ ‫أنها‬ ً‫ٌعن‬ ‫ال‬ ‫األمر‬ ‫هذا‬ ‫لكن‬ ،‫الرٌاضٌات‬ ‫على‬ ‫الخوارزمٌات‬ ‫تعتمد‬ ‫لد‬ ‫إلى‬ ‫أولٌة‬ ‫توظٌف‬ ‫عملٌات‬ ً‫ف‬ ‫استخدمت‬ ‫خوارزمٌات‬ ‫أشارت‬ ،‫المثال‬ ‫سبٌل‬ ‫على‬ ‫المرجح‬ ‫من‬ ‫أن‬ ‫إلى‬ ‫العمل‬ ‫من‬ ‫وصولهم‬ ‫رحالت‬ ً‫ف‬ ‫ٌستغرلونه‬ ‫الذي‬ ‫الزمن‬ ‫كان‬ ‫إذا‬ ‫الشركة‬ ‫داخل‬ ً‫ف‬ ‫الناس‬ ‫بماء‬ ‫مسافة‬ ‫بعد‬ ‫على‬ ‫ٌسكنون‬ ‫الذٌن‬ ‫االشخاص‬ ‫كل‬ ‫بعد‬ُ‫أ‬ ‫االستنتاج‬ ‫هذا‬ ‫على‬ ‫وبناء‬ ،‫لصٌرا‬ ‫البٌت‬ .‫الشركة‬ ‫مكاتب‬ ‫من‬ ‫ساعة‬ ‫من‬ ‫أكثر‬ ‫الٌها‬ ‫الطرٌك‬ ‫ٌستغرق‬ ‫عادال‬ ‫المرار‬ ‫هذا‬ ‫مثل‬ ‫وٌبدو‬ ‫السكن‬ ‫ٌستطٌعون‬ ‫من‬ ‫أن‬ ‫كانت‬ ‫نتٌجته‬ ‫ولكن‬ ،‫الخارج‬ ‫من‬ ‫وممبوال‬ ‫أبعد‬ ‫الخوارزمٌات‬ ‫أن‬ ‫أي‬ ،‫فمط‬ ‫األغنٌاء‬ ‫من‬ ‫كانوا‬ ‫الشركة‬ ‫مولع‬ ‫من‬ ‫لرٌبا‬ ‫المدٌنة‬ ‫مركز‬ ً‫ف‬ .‫التوظٌف‬ ‫طلبات‬ ‫تمدٌمهم‬ ‫عند‬ ‫أدنى‬ ‫والتصادٌة‬ ‫اجتماعٌة‬ ‫خلفٌات‬ ‫جاءوا‬ ‫من‬ ‫كل‬ ‫مبرر‬ ‫غٌر‬ ‫بشكل‬ ‫المم‬ ‫غٌر‬ ‫االنحٌاز‬ ‫من‬ ‫النوع‬ ‫هذا‬ ‫بنٌت‬ ‫إذا‬ ،‫المثال‬ ‫سبٌل‬ ‫على‬ ،‫مكان‬ ‫كل‬ ً‫ف‬ ‫تراه‬ ‫صود‬ ً‫ف‬ ‫أجرٌت‬ ‫سوح‬ُ‫م‬ ‫بٌانات‬ ‫على‬ ‫بناء‬ ،‫الصدر‬ ‫أنسجة‬ ً‫ف‬ ‫السرطانٌة‬ ‫الخالٌا‬ ‫لتحدٌد‬ ‫ا‬ ‫خوارزمٌات‬ ‫لتشخٌص‬ ‫موفمة‬ ‫غٌر‬ ‫بنتٌجة‬ ً‫ستنته‬ ،‫لولازٌة‬ ‫أثنٌة‬ ‫أصول‬ ‫من‬ ‫مرضاها‬ ‫غالبٌة‬ ‫مستشفٌات‬ .‫أخرى‬ ‫أثنٌة‬ ‫خلفٌات‬ ‫من‬ ‫نساء‬ ً‫ف‬ ‫السرطان‬ ‫الح‬ ‫وكذلن‬ ‫مجموعات‬ ‫على‬ ‫واختبرت‬ ‫ممت‬ُ‫ص‬ ً‫الت‬ ،‫الوجه‬ ‫مالمح‬ ‫على‬ ‫التعرف‬ ‫تمنٌة‬ ‫مع‬ ،‫ال‬ ‫وجوه‬ ‫مالمح‬ ‫تمٌٌز‬ ً‫ف‬ ‫كبٌر‬ ‫بشكل‬ ‫فاعلة‬ ‫غٌر‬ ‫تصبح‬ ً‫الت‬ ،‫التنوع‬ ‫إلى‬ ‫تفتمد‬ ‫متجانسة‬ ‫بشرٌة‬ .‫دكنة‬ ‫أكثر‬ ‫لون‬ ‫درجة‬ ‫ذات‬ ‫بشرة‬ ‫ذوي‬ ‫من‬ ‫أشخاص‬ ‫ع‬ ‫لدرتن‬ ‫عدم‬ ‫عن‬ ‫الناجم‬ ‫باالزعاج‬ ‫ذلن‬ ‫ٌتعلك‬ ‫ال‬ :‫خطٌرة‬ ‫ذلن‬ ‫عوالب‬ ‫إن‬ ‫المغلك‬ ‫هاتفن‬ ‫فتح‬ ‫لى‬ ‫المحتمل‬ ‫من‬ ‫(أو‬ ‫تمٌٌز‬ ‫على‬ ‫لادرة‬ ‫غٌر‬ )‫سابك‬ ‫دون‬ ‫(من‬ ‫المٌادة‬ ‫ذاتٌة‬ ‫سٌارات‬ ‫كانت‬ ‫إذا‬ ‫أو‬ ،‫فمط‬ ‫المطارات‬ ً‫ف‬ ‫الدخول‬ ‫بوابات‬ ً‫ف‬ ‫الوجه‬ ‫على‬ ‫التعرف‬ ‫أجهزة‬ ‫كانت‬ ‫أو‬ ،‫معٌنٌن‬ ‫مشاة‬ )‫تتجنب‬ ‫أتم‬ ‫أنظمة‬ ‫ستولد‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫بأن‬ ‫بل‬ ،‫الناس‬ ‫من‬ ‫محدد‬ ‫نوع‬ ‫مع‬ ‫فمط‬ ‫تعمل‬ ‫مجتمع‬ ً‫ف‬ ‫تة‬ .‫متكافا‬ ‫غٌر‬ ‫خالل‬ ‫األمر‬ ‫هذا‬ ‫على‬ ‫تركٌزا‬ ‫أكثر‬ ‫باتوا‬ ‫الخوارزمٌات‬ ‫إعداد‬ ً‫ف‬ ‫العاملٌن‬ ‫أن‬ ‫الحظ‬ ‫حسن‬ ‫ومن‬ .‫تحسٌنها‬ ‫بفاعلٌة‬ ‫وٌحاولون‬ ‫الماضٌتٌن‬ ‫السنتٌن‬ ٙ - ‫صواب؟‬ ‫على‬ ‫تكون‬ ‫متى‬ ‫الخوارزمٌات‬ ‫تعلم‬ ‫كٌف‬ ‫المزٌفة‬ ‫الخوارزمٌات‬ ‫من‬ ‫احترس‬ .‫ألدمه‬ ‫الذي‬ ‫األكبر‬ ‫التحذٌر‬ ‫هنا‬ ‫على‬ ‫تبنى‬ ً‫الت‬ ‫تلن‬ ‫(أي‬ .‫زابف‬ ‫علم‬ ‫على‬ ‫معتمدة‬ ‫للملك‬ ‫مثٌرة‬ ‫خوارزمٌات‬ ‫باستخدام‬ ‫توجه‬ ‫ثمة‬ .)‫علمٌة‬ ‫غٌر‬ ‫بٌانات‬ ‫تعلم‬ ‫كٌف‬ :‫البسٌط‬ ‫السؤال‬ ‫هذا‬ ‫نفسن‬ ‫بسؤال‬ ‫إبدأ‬ ،‫تشخٌصها‬ ‫من‬ ‫تمكنن‬ ‫طرق‬ ‫ثمة‬ ،‫الحظ‬ ‫ولحسن‬ ‫صواب؟‬ ‫على‬ ‫تكون‬ ‫متى‬ ‫االخوارزمٌات‬
  • 41.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 40 0202 ‫م‬ – 5221 ‫هـ‬ ،‫الصورة‬ ‫صدر‬ Getty Images ‫على‬ ‫التعلٌك‬ ‫الوجه‬ ‫على‬ ‫التعرف‬ ‫تمنٌة‬ ‫على‬ ‫العالم‬ ‫حول‬ ‫الشرطة‬ ‫لوات‬ ‫اعتماد‬ ‫ٌتزاٌد‬ ،‫الصورة‬ ‫مالمح‬ ‫تمٌٌز‬ ‫عملٌة‬ ً‫ف‬ ‫المثال‬ ‫سبٌل‬ ‫على‬ ،‫مناسبة‬ ‫خوارزمٌات‬ ‫علٌه‬ ‫تجٌب‬ ‫أن‬ ‫ٌسهل‬ ‫سؤال‬ ‫وهذا‬ ‫وهكذا‬ .‫تكون‬ ‫ال‬ ‫أو‬ ‫الخوارزمٌات‬ ‫عنه‬ ‫تبحث‬ ‫الذي‬ ‫الشخص‬ ‫تكون‬ ‫أن‬ ‫إما‬ ‫احتماالن‬ ‫ثمة‬ :‫الوجه‬ ‫ٌع‬ ‫الخوارزمٌات‬ ‫فإن‬ .‫وجهن‬ ‫مالمح‬ ‫تحدٌد‬ ً‫ف‬ ‫صواب‬ ‫على‬ ‫ٌكون‬ ‫متى‬ ‫رف‬ ‫ما‬ ‫شخص‬ ‫عواطف‬ ‫تحدٌد‬ ‫على‬ ‫لادرة‬ ‫أنها‬ ‫تزعم‬ ً‫الت‬ ‫الخوارزمٌات‬ ‫بعض‬ ‫ثمة‬ ،‫العكس‬ ‫وعلى‬ ‫وتثستخدم‬ .‫فٌدٌو‬ ‫مماطع‬ ً‫ف‬ ‫صوره‬ ‫من‬ ‫وشخصٌته‬ ‫مناسبا‬ ‫ما‬ ‫شخصا‬ ‫أن‬ ‫هل‬ ‫لتمٌٌم‬ ‫الممابالت‬ ً‫ف‬ ‫لد‬ ‫أنها‬ ‫تعرف‬ ‫أن‬ ‫للخوارزمٌات‬ ‫ٌمكن‬ ‫كٌف‬ : ‫نفسه‬ ‫ٌطرح‬ ‫سؤال‬ ‫وهنا‬ .‫الشركة‬ ً‫ف‬ ‫للعمل‬ ‫صحٌح؟‬ ‫بشكل‬ ‫الشخص‬ ‫عواطف‬ ‫استخلصت‬ ‫على‬ ‫عمل‬ ‫ممابلة‬ ‫مثل‬ ‫مناسبة‬ ً‫وف‬ ،‫الشخصٌة‬ ‫عواطفن‬ ‫وصف‬ ‫حتى‬ ‫تستطٌع‬ ‫هل‬ ،‫صادلٌن‬ ‫لنكن‬ ٌ‫مز‬ ‫فٌها‬ ‫تعٌش‬ ‫وأنت‬ ‫الخصوص‬ ‫وجه‬ ‫من‬ ‫واثك‬ ‫أنن‬ ً‫توح‬ ‫أن‬ ‫تحاول‬ ‫بٌنما‬ ‫والملك‬ ‫اإلثارة‬ ‫من‬ ‫جا‬ .‫نفسن‬ 7 - ‫الخوارزمٌات؟‬ ‫هذه‬ ‫تستخدم‬ ‫من‬ ‫لمصلحة‬ ‫نفسن‬ ‫إسأل‬ ‫عام‬ ً‫ف‬ ‫جري‬ُ‫أ‬ ‫شهٌر‬ ‫استبٌان‬ ً‫ف‬ ٕٓٔٙ ‫ٌمكن‬ ‫ال‬ ‫اصطدام‬ ‫حادث‬ ‫ولوع‬ ‫حالة‬ ً‫ف‬ ‫أنه‬ ‫أناس‬ ‫بل‬ُ‫س‬ ، ‫النماذه‬ ‫ستختار‬ ‫من‬ ،‫سابك‬ ‫بدون‬ ‫سٌارة‬ ً‫ف‬ ‫تجنبه‬ ‫األبرٌاء؟‬ ‫المارة‬ ‫أم‬ ‫السٌارة‬ ‫ركاب‬ ‫نحو‬ ،‫االستبٌان‬ ً‫ف‬ ‫المشاركٌن‬ ‫من‬ ‫كبٌرة‬ ‫نسبة‬ 7ٙ ‫تموم‬ ‫أن‬ ً‫األخالل‬ ‫من‬ ‫أن‬ ‫شعرت‬ ،‫المبة‬ ً‫ف‬ ‫الذٌن‬ ‫بالركاب‬ ‫التضحٌة‬ ً‫ٌعن‬ ‫وهذا‬ ،‫األشخاص‬ ‫من‬ ‫لدر‬ ‫أكبر‬ ‫بإنماذ‬ ‫سابمٌن‬ ‫دون‬ ‫من‬ ‫السٌارات‬ .‫السٌارة‬ ‫داخل‬
  • 42.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 42 0202 ‫م‬ – 5221 ‫هـ‬ ‫ه‬ ‫عن‬ ‫المشاركٌن‬ ‫نفسها‬ ‫الدراسة‬ ‫سألت‬ ‫وعندما‬ ً‫ف‬ ‫تتسبب‬ ‫أن‬ ‫ُمكن‬ٌ ‫سٌارة‬ ‫سٌشترون‬ ‫أنهم‬ ‫ل‬ ‫العام‬ ‫الخٌر‬ ‫أجل‬ ‫من‬ ‫بأنفسهم‬ ‫بالتضحٌة‬ ‫مترددٌن‬ ‫فجأة‬ ‫بدوا‬ ،‫كر‬ُ‫ذ‬ ‫مثلما‬ ‫حرج‬ ‫ظرف‬ ً‫ف‬ ‫ممتلهم‬ .!‫تلن‬ ‫مفاجأة‬ ‫أٌة‬ .‫األشخاص‬ ‫من‬ ‫عدد‬ ‫أكبر‬ ‫وإنماذ‬ ‫إلنجاز‬ ‫بنى‬ُ‫ت‬ ‫الخوارزمٌات‬ ‫إن‬ :‫سابمٌن‬ ‫دون‬ ‫من‬ ‫السٌارات‬ ‫عالم‬ ‫خارج‬ ‫تذكره‬ ‫ٌجدر‬ ‫شًء‬ ‫وهذا‬ ‫م‬ ‫هدف‬ ‫لهم؟‬ ‫أسبلتن‬ ‫توجٌه‬ ‫لكٌفٌة‬ ‫أو‬ ‫سألتهم‬ ‫لمن‬ ‫تبعا‬ ‫تتغٌر‬ ‫لد‬ ‫المرغوبة‬ ‫النتٌجة‬ ‫أن‬ ‫بٌد‬ ،‫حدد‬ ‫فخوارزمٌات‬ :‫فعله‬ ‫الخوارزمٌات‬ ‫تحاول‬ ‫ما‬ ‫مع‬ ‫إلٌن‬ ‫بالنسبة‬ ‫أفضل‬ ‫هو‬ ‫ما‬ ‫ٌنسجم‬ ،‫العادة‬ ً‫ف‬ ‫جعل‬ ً‫ف‬ ‫تساعد‬ ‫لد‬ ‫الوجه‬ ‫على‬ ‫التعرف‬ ‫وخوارزمٌات‬ ،‫نفماتن‬ ‫تخفٌض‬ ً‫ف‬ ‫تسهم‬ ‫لد‬ ‫التأمٌن‬ ‫تسٌر‬ ‫الطوابٌر‬ ‫لمصلحة‬ ‫معرفة‬ ‫المهم‬ ‫من‬ ‫أنه‬ ‫بٌد‬ .)‫األلل‬ ‫على‬ ‫الناس‬ ‫لبعض‬ ‫(بالنسبة‬ ‫أسرع‬ ‫بشكل‬ ،‫فٌسبون‬ ،‫أودٌوبل‬ ،‫سبوتٌفاي‬ ،‫ٌوتٌوب‬ :‫أمثال‬ ‫من‬ ‫شركات‬ ‫(لحساب‬ ‫الخوارزمٌات‬ ‫هذه‬ ‫تعمل‬ ‫من‬ ‫عمٌمة‬ ‫رغبة‬ ‫لدٌها‬ ‫ألن‬ ‫لٌس‬ ،‫تحبها‬ ً‫الت‬ ‫األشٌاء‬ ‫لخدمة‬ ‫ُنٌت‬‫ب‬ ‫الخوارزمٌات‬ ‫فكل‬ ،)‫شابه‬ ‫وما‬ ‫مس‬ ‫تران‬ ‫ألن‬ ‫الجذور‬ ‫فترة‬ ‫ألطول‬ ‫فمط‬ ‫تخدمه‬ ‫الذي‬ ‫المولع‬ ً‫ف‬ ‫تبمٌن‬ ‫أن‬ ‫تحاول‬ ‫إنها‬ ‫بل‬ .‫تمتعا‬ .‫اإلعالنات‬ ‫لن‬ ‫سوق‬ُ‫ت‬‫و‬ ً‫ء‬‫أشٌا‬ ‫تبٌعن‬ ‫وأن‬ ،‫ممكنة‬ ،‫فٌه‬ ‫نغرق‬ ‫الذي‬ ‫اإلنترنت‬ ‫تكنولوجٌا‬ ‫عالم‬ ‫خلف‬ ‫تمف‬ ً‫الت‬ ‫المرعبة‬ ‫الموة‬ ‫تلن‬ ‫عن‬ ‫لمحات‬ ‫هذه‬ ‫ال‬ ً‫الملك‬ ‫المعهد‬ ً‫ف‬ ‫المٌالد‬ ‫أعٌاد‬ ‫محاضرات‬ ً‫ف‬ ‫الكثٌر‬ ‫ستجد‬ ‫ولكن‬ ‫لعام‬ ً‫برٌطان‬ ٕٓٔ9 ً‫والت‬ ً‫ف‬ "‫الخفٌة‬ ‫الرٌاضٌات‬ ‫لوة‬ : ‫وأكاذٌب‬ ‫"أسرار‬ : ‫عنوان‬ ‫تحمل‬ ٕٙ ‫و‬ ٕ7 ‫و‬ ٕ4 ‫الشهر‬ ‫من‬ ‫رادٌو‬ ً‫س‬ ً‫ب‬ ً‫ب‬ ً‫ف‬ ‫وتنمل‬ ‫الجاري‬ ٗ .ً‫ء‬‫مسا‬ ‫الثامنة‬ ‫الساعة‬ ً‫ف‬ : ً‫ا‬‫أخٌر‬ - - ‫الخوارزمٌات‬ ‫علم‬ | ‫العالم‬ ‫غٌرت‬ ‫اكتشافات‬ : - ‫العرب‬ ‫طمس‬ - :‫الترجمة‬ ‫بعد‬ ‫عرف‬ ‫(والذي‬ ‫الخوارزمٌات‬ ‫علم‬ ‫ُعنى‬ٌ Algorithm ‫بوضع‬ ) ‫الخوارزمٌات‬ ‫وسمٌت‬ .‫ما‬ ‫مشكلة‬ ‫لحل‬ ‫والمتسلسلة‬ ‫والمنطمٌة‬ ‫الرٌاضٌة‬ ‫الخطوات‬ ‫من‬ ‫مجموعة‬ ‫التاسع‬ ‫المرن‬ ً‫ف‬ ‫ابتكرها‬ ‫الذي‬ ً‫الخوارزم‬ ‫موسى‬ ‫بن‬ ‫دمحم‬ ‫جعفر‬ ‫أبو‬ ‫العالم‬ ‫إلى‬ ‫نسبة‬ ‫االسم‬ ‫بهذا‬ .‫المٌالدي‬ ً‫ه‬ ‫ما‬ ‫الخوارزمٌة؟‬ ‫حٌث‬ .‫والتكرار‬ ‫واالختٌار‬ ‫التسلسل‬ :ً‫وه‬ ‫تراكٌب‬ ‫ثالثة‬ ‫من‬ ‫تتكون‬ ‫طرٌمة‬ ً‫ه‬ ‫الخوارزمٌة‬ ‫حلها‬ ‫ٌمكن‬ ‫ال‬ ‫المشاكل‬ ‫بعض‬ ‫أن‬ ‫إال‬ ،‫المتسلسلة‬ ‫التعلٌمات‬ ‫من‬ ‫مجموعة‬ ‫على‬ ‫الخوارزمٌة‬ ‫تحتوي‬ ‫االختبار‬ ‫نتٌجة‬ ‫كانت‬ ‫فإذا‬ ،‫الشروط‬ ‫بعض‬ ‫اختبار‬ ‫إلى‬ ‫تحتاج‬ ‫ولد‬ ،‫للتعلٌمات‬ ‫بسٌط‬ ‫بتسلسل‬ ‫من‬ ‫مختلف‬ ‫آخر‬ ‫مسار‬ ‫تتبع‬ ‫خاطبة‬ ‫كانت‬ ‫وإذا‬ ،‫المتسلسلة‬ ‫التعلٌمات‬ ‫من‬ ‫مسار‬ ‫تتبع‬ ‫صحٌحة‬ ‫إعادة‬ ‫من‬ ‫بد‬ ‫ال‬ ‫المشاكل‬ ‫بعض‬ ‫حل‬ ‫وعند‬ .‫االختٌار‬ ‫أو‬ ‫المرار‬ ‫اتخاذ‬ ‫ٌسمى‬ ‫ما‬ ‫وهذا‬ .‫التعلٌمات‬ .‫التكرار‬ ‫علٌه‬ ‫ٌطلك‬ ‫ما‬ ‫وهذا‬ .‫المرات‬ ‫من‬ ‫عدد‬ ‫الخطوات‬ ‫تسلسل‬ ‫نفس‬ ‫الخوارزمٌات‬ ‫علم‬ ‫مبتكر‬ ‫علما‬ ‫كان‬ ‫وبالد‬ ‫العراق‬ ‫من‬ ‫معظمهم‬ ‫وكان‬ ،‫بالغة‬ ‫بدلة‬ ‫الحساب‬ ‫ٌعرفون‬ ‫المسلمٌن‬ ‫الرٌاضٌات‬ ‫ء‬ ‫أهم‬ ‫من‬ ‫اعتبر‬ ‫والذي‬ ً‫الخوارزم‬ ‫موسى‬ ‫بن‬ ‫دمحم‬ ‫العلماء‬ ‫هؤالء‬ ‫ومن‬ ،‫الوسطى‬ ‫وآسٌا‬ ‫فارس‬ ‫بعلم‬ ‫اسمه‬ ‫وارتبط‬ ،‫المٌالدي‬ ‫التاسع‬ ‫المرن‬ ً‫ف‬ ‫الرٌاضٌات‬ ‫علم‬ ً‫ف‬ ‫برزوا‬ ‫الذٌن‬ ‫المسلمٌن‬ ‫العلماء‬ ‫ا‬ ‫الخوارزمٌات‬ ‫عمل‬ ‫آلٌة‬ ً‫ف‬ ‫األساس‬ ‫وكان‬ ً‫ا‬‫جد‬ ً‫ا‬‫مهم‬ ‫ظهوره‬ ‫كان‬ ‫والذي‬ ،‫الجبر‬ ‫بعلم‬ ‫الترن‬ ‫لذي‬ .‫الحدٌثة‬ ‫الحواسٌب‬
  • 43.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 43 0202 ‫م‬ – 5221 ‫هـ‬ ‫الخوارزمٌات‬ ‫علم‬ ‫أهمٌة‬ ‫تحل‬ ‫آلة‬ ‫لصنع‬ ‫نموذج‬ ‫بإنشاء‬ "‫تٌرٌنغ‬ ‫"االن‬ ً‫البرٌطان‬ ‫الرٌاضٌات‬ ‫عالم‬ ‫لام‬ ‫العشرٌن‬ ‫المرن‬ ً‫ف‬ ‫اﻵ‬ ‫تلن‬ ‫واعتبرت‬ ،‫الخوارزمٌات‬ ‫لعلم‬ ً‫ا‬‫وفم‬ ‫معمدة‬ ‫رٌاضٌة‬ ‫مسابل‬ ،‫للحاسوب‬ ‫نموذج‬ ‫أول‬ ‫لة‬ ‫تستخدم‬ ً‫الت‬ ‫اﻵلة‬ ‫تلن‬ ‫استعملت‬ ‫كما‬ ،‫برمجة‬ ‫لغة‬ ‫بمثابة‬ ‫تستعملها‬ ً‫الت‬ ‫الخوارزمٌة‬ ‫واعتبرت‬ ‫رسابل‬ ‫على‬ ‫التنصت‬ ‫من‬ ‫البرٌطانٌٌن‬ ‫مكنت‬ ً‫والت‬ ‫األلمانٌة‬ "‫"إنٌجما‬ ‫شٌفرة‬ ‫لفن‬ ‫الخوارزمٌات‬ ‫كمحر‬ ،‫الخوارزمٌات‬ ‫ٌستخدم‬ ‫ال‬ ‫الحاسوب‬ ً‫ف‬ ‫شًء‬ ‫من‬ ‫ما‬ ‫والٌوم‬ ،‫األلمان‬ ‫ولغات‬ ‫البحث‬ ‫كات‬ .‫وغٌرها‬ ‫والفٌدٌوهات‬ ‫البرمجة‬ ‫الختام‬ ً‫وف‬ - ‫لدموه‬ ‫وما‬ ‫وانجازاتهم‬ ‫والمسلمٌن‬ ‫العرب‬ ‫العلماء‬ ‫من‬ ‫اﻵالف‬ ‫بأسماء‬ ‫تارٌخنا‬ ‫ٌزخر‬ ‫ٌستخدم‬ ‫الزال‬ ‫وبعضها‬ ‫والمعارف‬ ‫العلوم‬ ‫جمٌع‬ ‫منها‬ ‫استفادت‬ ‫وابتكارات‬ ‫اختراعات‬ ‫من‬ ‫للبشرٌة‬ ‫رمضان‬ ‫شهر‬ ‫أٌام‬ ‫طوال‬ ‫لكم‬ ‫نستعرض‬ ،‫اﻵن‬ ‫حتى‬ ‫غٌرت‬ ‫"اكتشافات‬ ‫السلسلة‬ ً‫ف‬ ‫المبارن‬ ‫على‬ ‫الحٌاة‬ ‫وجه‬ ‫بها‬ ‫فغٌروا‬ ‫المسلمٌن‬ ‫علماء‬ ‫لدمها‬ ً‫الت‬ ‫واالبتكارات‬ ‫االختراعات‬ ‫بعض‬ "‫العالم‬ .‫العصور‬ ‫مر‬ ‫الخالصة‬ : - ً‫ف‬ ‫تعرفنا‬ ‫سبك‬ ‫ما‬ ‫على‬ ‫وهندسة‬ ‫الحاسب‬ ‫علوم‬ ً‫ف‬ ‫الخوارزمٌات‬ ‫وأهمٌة‬ ‫الخوارزمٌة‬ ً‫ه‬ ‫ما‬ ‫حل‬ ‫خطوات‬ ‫على‬ ‫وتعرفنا‬ ،‫البرمجٌات‬ ‫بالشٌفرة‬ ‫الخوارزمٌات‬ ‫عن‬ ‫التعبٌر‬ ‫وطرق‬ ‫الخوارزمٌة‬ ‫العملٌة‬ ‫األمثلة‬ ‫خالل‬ ‫من‬ ‫حاسوبٌة‬ ‫برامج‬ ‫إلى‬ ‫ذلن‬ ‫بعد‬ ‫تحوٌلها‬ ‫ثم‬ ‫االنسٌابٌة‬ ‫والمخططات‬ ‫الوهمٌة‬ ‫المبتدبٌن‬ ‫تناسب‬ ً‫الت‬ ‫البسٌطة‬ . ‫وأهم‬ ،‫الخوارزمٌات‬ ‫تعلم‬ ‫من‬ ‫كمبرمج‬ ‫تجنٌها‬ ً‫الت‬ ‫الفوابد‬ ‫أبرز‬ ‫على‬ ‫الختام‬ ً‫ف‬ ‫تعرفنا‬ ‫كما‬ ‫المر‬ ‫لتكون‬ ‫تسعى‬ ‫كنت‬ ‫فإذا‬ ،‫لالحتراف‬ ‫الصفر‬ ‫من‬ ‫الخوارزمٌات‬ ‫تشرح‬ ً‫الت‬ ‫العربٌة‬ ‫اجع‬ ‫الحسبان‬ ً‫ف‬ ‫تضعها‬ ‫أن‬ ً‫ٌنبغ‬ ً‫الت‬ ‫المهمة‬ ‫األمور‬ ‫أحد‬ ‫الخوارزمٌات‬ ‫فتعلم‬ ‫ا‬ً‫ف‬‫محتر‬ ‫ا‬ً‫ج‬‫مبرم‬ ‫الهدف‬ ‫هذا‬ ‫تحمٌك‬ ‫على‬ ‫لتساعدن‬ .
  • 44.
    ‫الظفري‬ ‫حسني‬ ‫عبداجلبار‬/ ‫م‬.‫أ‬ ‫إعداد‬ ‫إ‬ ‫الشاهل‬ ‫علن‬ ‫ىل‬ ‫اخلىارزهياث‬ ‫التدفق‬ ‫وخرائط‬ 44 0202 ‫م‬ – 5221 ‫هـ‬ ‫المصادر‬ ‫والمراجع‬ : - - ‫ومبادىء‬ ‫خوارزمٌات‬ :‫مساق‬ ‫أبوبكر‬ ‫بسام‬ ‫دمحم‬.‫م‬ / ‫المؤلف‬ .‫البرمجة‬ - .‫مؤلف‬ ‫بدون‬ / ‫المؤلف‬ .‫والخوارزمٌات‬ ‫العلمٌات‬ ‫سٌر‬ ‫خرابط‬ - ‫الغدا‬ ‫سامر‬ .‫م‬ / ‫المؤلف‬ .) ‫التدفمٌة‬ ‫والمخططات‬ ‫الخوارزمٌات‬ ( ‫الحاسبات‬ ‫برامج‬ ‫تصمٌم‬ - ‫جبرٌل‬ ‫دمحم‬ ‫المهدي‬.‫م‬ / ‫المؤلف‬ .‫اإلنسٌابٌة‬ ‫والمخططات‬ ‫الخوارزمٌات‬ ً‫ف‬ ‫أساسٌات‬ 50919484 - tech - and - https://www.bbc.com/arabic/science ://ar.wikipedia.org/wiki/%D8%B9%D9%84%D9%85_%D8%A7%D9%84 https %D8%AE%D9%88%D8%A7%D8%B1%D8%B2%D9%85%D9%8A%D8%A7 %D8%AA 8%B1%D8%B2% https://ar.wikipedia.org/wiki/%D8%AE%D9%88%D8%A7%D D9%85%D9%8A%D8%A9 MIT BBC includehelp .Skiena, Steven S. The algorithm design manual: Text. Vol. 1. Springer Science & Business Media, 1998 .Cormen, Thomas H., et al. Introduction to algorithms. MIT press, 2009 - apost.com/%D8%B3%D9%84%D8%B3%D9%84%D8%A9 https://elakademi - - %D8%AA%D8%B9%D9%84%D9%85 %D8%A7%D9%84%D8%AE%D9%88%D8%A7%D8%B1%D8%B2%D9%85%D9%8A%D8 - %D9%87%D9%8A - %D9%85%D8%A7 - %A7%D8%AA %D8%A7%D9%84%D8%AE%D9%88%D8%A7%D8%B1%D8%B2%D9%85 / https://www.arabiaweather.com/ar/content/%D8%A7%D9%83%D8%AA%D8%B4%D 8%A7%D9%81%D8%A7%D8%AA-%D8%BA%D9%8A%D8%B1%D8%AA- %D8%A7%D9%84%D8%B9%D8%A7%D9%84%D9%85-%D8%B9%D9%84%D9%85- %D8%A7%D9%84%D8%AE%D9%88%D8%A7%D8%B1%D8%B2%D9%85%D9%8A%D8 %A7%D8%AA