لغة الخوارزميات Algorithm
لغة الخوارزميات
لغه الخوارزميات هي عبارة عن لغة مصطنعة بمعنى انها لغه للتعبير عن البرامج ولكنها ليست لغة برمجة فعلية.
فهي تساعد المبرمجين على التعبير عن الخوارزميات اي خطوات الحل ومساره وتسلسل تنفيذه، كما لا يمكن تنفيذ البرامج المكتوبة بلغة الخوارزميات على الحاسوب لكنها تساعد المبرمج كثيرا على التفكير ببرنامجه قبل محاولة كتابته بأية لغة برمجة.
قبل ان نبدأ في الحديث عن التعليمات الاساسية للغة الخوارزميات وشرحها سارفق لكم فيديو توضيحي يبسط مفهوم الخوارزميات :
التعليمات الاساسيه للغة الخوارزميات:
بامكاني التعبير عن توصيف خوارزمية بواسطة التعليمات الخمس الاساسية التالية:
1- تعليمة القراءة او ادخال المعطيات
2- تعليمة الكتابة او اظهار النتائج
3- تعليمة الاسناد او وضع تقيم في متحول
4- التعليمة الشرطية
5- التعليمة التكرارية
نلاحظ هنا ان هذه التعليمات هي نظرة عالية المستوى لما يمكن ان يقوم به الحاسوب، فتعليمة القراءة وتعليمة الكتابة هي للداخل والخرج.
اما تعليمة الاسناد فهي للتعامل مع المتحولات اي خانات الذاكرة.
اما التعليمة الشرطية والتعليمة التكرارية فهي للتحكم في مسار تسلسل التنفيذ، كما ان هاتان التعليمتان ستفيداننا في تغيير تسلسل التنفيذ.
ساقوم الان بطرح امثلة و استخدم بها متحولات عددية صحيحة، واقصد في المتحول هنا خانة ذاكرة.
يعرف المتحول بثلاثية : اولا اسم التعريف، ثانيا النمط، ثالثا خانة ذاكرة يشغلها.
تعليمة القراءة read :
وهي اعطاء قيمة من الداخل اي من لوحه المفاتيح لوضعها في خانة ذاكرة
وكشكل لهذه التعليمة :
اقرأ متحول او متحولات
وهي عبارة عن امر يقول خذ القيمة الموجودة في الداخل وضعها في خانة ذاكره المتحول
اقرأ M
ضع القيمة التي تعطى من الدخل في خانة الذاكرة M
ان تنفيذ الحاسوب لتعليمة القراءه يكون بانتظار المستخدم حتى يدخل قيم ويضغط مفتاح الادخال enter. ٠
تعليمة الكتابة write :
وهي اظهار قيم معينة على وحده خرج اي الشاشة
وكشكل لهذه التعليمة :
أكتب صيغة او تعبير
وهي تركيب من توابع ومتحولات و ثوابت و عمليات، وفي الحالة البسيطة يكون التعبير متحولا فقط او ثابت فقط. كما يمكن لتعليمة الكتابة اظهار اكثر من قيمة (عدة صيغ).
امثلة :
كمتحولات
اكتب M
اظهر القيمة الموجودة في خانة الذاكرة M على الخرج
كثوابت
اكتب 20
ستظهر القيمة 20 على الخرج
كتوابع
اكتب sin 0
ستظهر القيمة 0 على الخرج
كعمليات
اكتب M*5
احسب قيمة التعبير M*5 و اظهرها على الخرج فاذا كانت M تساوي 5 ستظهر القيمة 25 على الخرج
كما ان هناك امكانية هامة لتعليمة الكتابة الا وهي كتابة نص او سلسلة حرفية
اكتب " Hello Rana"
سيظهر النص كما هو تماما على الخرج Hello Rana
كما سانوه ان الحروف الكبيرة و الصغيرة و الفراغات ستظهر كما هي محددة بين علامتي التنصيص
ساضع هنا مثالا يدمج بين اظهار عملية ضرب مع اظهار سلسلة نصية
اكتب "the result is", 2*B
ولنفرض ان B هنا قيمتها 3
ستظهر تعليمة الكتابة التالي :
the result is 6
تعليمة الاسناد :
وهي اسناد قيمة صيغة لمتحول اي لخانة ذاكرة
ونعطي شكلا نظاميا لهذه التعليمة :
صيغة او تعبير← متحول
مثال:
لدينا في خانتي الذاكرة x, yالقيم المخزنة x=25, y=10
عند تنفيذ تعليمة الاسناد التالية:
y→x
تصبح بالخانة x القيمة 10 ايضا او نقول ان المتحول x يساوي 10
التعليمة الشرطية :
وفيها تتحدد التعليمات التالية في التنفيذ بناء على اختبار شرط.
وترد باحد الشكلين التاليين:
1- التعليمة الشرطية البسيطة او التنفيذ بشرط if
2- التعليمه الشرطية الاختيارية او التنفيذ باختيار بين مسارين وفقا للشرط if else
اولا التعليمة الشرطية البسيطة if :
نعطيها شكلا نظاميا: كخوارزمية
اذا (الشرط) نفذ
بداية
مجموعة تعليمات
نهاية
وفي هذه التعليمة يجري اختبار الشرط فان كان محققا اي صحيحا تنفذ مجموعة التعليمات وان لم يكن محققا لن تنفذ مجموعة التعليمات وسينتقل التنفيذ الى التعليمة التالية بعد كامل التعليمة الشرطية
والشرط هو اي صيغة تقيم بصح او خطا… او امر يمكن البت بشأنه اما محقق او غير محقق… نعم او لا… true او false، يمكن ان يتضمن الشرط ادوات العطف : or, and, not او المقارنة : التراجح او المساواة.
مثال:
اذا (k>0) نفذ
بداية
L/k →A
نهاية
نريد من هذه التعليمات هنا ان نقسم على قيمة المتحول k بشرط ان تكون k اكبر من الصفر. وبتعبير اخر اذا كانت k اكبر من الصفر عندها نفذ تعليمة الاسناد للتعبير عن L/k الى المتحول A
ثانيا التعليمة الشرطية الاختياريه if else :
اذا (شرط) نفذ
مجموعة تعليمات 1
والا
مجموعة تعليمات 2
في هذه التعليمة يجري الاختيار بين مساري التنفيذ اما تنفيذ مجموعة التعليمات 1 في حال كان شرط محققا اي صحيحا او تنفيذ مجموعة التعليمات 2 في الحالة المعاكسة اي اذا كان الشرط غير محققا
مثال:
اذا ( V=! 0 ) نفذ
S/V → A
والا
اكتب " لا استطيع القسمة على صفر"
نريد من هذه هنا ان نقسم على قيمة المتحول V بشرط ان يكون المتحول V لا يساوي الصفر والا تظهر عبارة تدل على الخطأ.
ملاحظة : تسمى التعليمة الشرطية ايضا بتعليمة التفريع. لان مسار التحكم في تنفيذ البرنامج يتفرع عندها الى الاختيار بين مسارين وفقا لشرط.
ساكتفي بهذا القدر لليوم وسنكمل فيما بعد مع شرح للتعليمة التكرارية .... اتمنى ان تبقو بخير ... تحياتي🍀