الخوارزميات

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