Saud | سعود الانصاري
Saud | سعود الانصاري

@Alansaricodez

19 تغريدة 20 قراءة Aug 14, 2022
❗️ثريدات مهمة لطلبة تقنية المعلومات وعلوم الحاسب❗️
موضوع اليوم:
ما هي الخوارزمية؟ وما هي خصائصها وكيفية كتابتها🤷🏻‍♂️
الخوارزمية هي إجراء خطوة بخطوة يحدد مجموعة من التعليمات التي يجب تنفيذها بترتيب محدد لتحقيق النتيجة المرجوة
يتم تطوير الخوارزميات بشكل عام بشكل مستقل عن اللغات الأساسية، مما يعني أنه يمكن تنفيذ الخوارزمية بأكثر من لغة برمجة واحدة
قابلية التوسع والأداء للخوارزمية هي العوامل الأساسية التي تسهم في أهميتها
♦️لكن ماذا نعني بالخوارزميات بشكل تفصيلي؟
- الخوارزمية هي مجموعة من الأوامر التي يجب اتباعها للكمبيوتر لإجراء العمليات الحسابية أو عمليات حل المشكلات الأخرى
- وفقا لتعريفها الرسمي، الخوارزمية هي مجموعة محدودة من التعليمات التي يتم تنفيذها بترتيب محدد لأداء مهمة معينة
- إنه ليس البرنامج أو الرمز بأكمله، إنه منطق بسيط لمشكلة ممثلة كوصف غير رسمي في شكل مخطط انسيابي أو رمز زائف
♦️تتكون الخوارزمية من خمسة امور:
1️⃣ المشكلة:
يمكن تعريف المشكلة بأنها مشكلة في العالم الحقيقي أو مشكلة تتواجد في العالم الحقيقي تحتاج إلى تطوير برنامج أو مجموعة من التعليمات لها
2️⃣ الخوارزمية:
يتم تعريف الخوارزمية على أنها عملية خطوة بخطوة يتم تصميمها لمشكلة ما
3️⃣ المدخلات:
بعد تصميم خوارزمية، يتم إعطاء الخوارزمية المدخلات اللازمة والمطلوبة
4️⃣ وحدة المعالجة:
سيتم تمرير المدخلات إلى وحدة المعالجة، مما ينتج عنه الإخراج المطلوب
5️⃣ الإخراج:
يشار إلى نتيجة أو نتيجة البرنامج باسم المخرجات
♦️خصائص الخوارزمية:
1️⃣ الإدخال:
تتطلب الخوارزمية بعض قيم الإدخال. يمكن إعطاء الخوارزمية قيمة أخرى غير 0 كمدخل
2️⃣ الإخراج:
في نهاية الخوارزمية، سيكون لديك نتيجة واحدة أو أكثر
3️⃣ عدم الغموض:
يتم تعريف الخوارزمية المثالية على أنها لا لبس فيها، مما يعني أن تعليماتها يجب أن تكون واضحة ومباشرة
4️⃣ المحدودية:
يجب أن تكون الخوارزمية محدودة، أي أن الخوارزمية يجب أن تحتوي على عدد محدود من التعليمات، بمعنى أن تكون التعليمات قابلة للعد
5️⃣ الفعالية:
نظرا لأن كل تعليمات في الخوارزمية تؤثر على العملية الشاملة، يجب أن تكون كافية
6️⃣ استقلال اللغة:
يجب أن تكون الخوارزمية مستقلة عن اللغة، مما يعني أنه يمكن تنفيذ تعليماتها بأي لغة وتحقيق نفس النتائج
♦️لماذا تحتاج إلى خوارزمية؟
- القابلية للتوسع:
إنه يساعد في فهمك لقابلية التوسع. عندما يكون لديك مشكلة كبيرة في العالم الحقيقي، يجب تقسيمها إلى خطوات صغيرة لتحليلها بسرعة
- الأداء:
من الصعب تقسيم العالم الحقيقي إلى خطوات أصغر. إذا كان من الممكن تقسيم المشكلة بسهولة إلى خطوات أصغر، فهذا يشير إلى أن المشكلة ممكنة
♦️كيف تكتب خوارزمية؟
لا توجد معايير محددة جيدا لكتابة الخوارزميات
ومع ذلك، فهي مشكلة تعتمد على الموارد، لا تتم كتابة الخوارزميات أبدا مع وضع لغة برمجة محددة في الاعتبار
كما تعلمون جميعا، تشترك بنيات التعليمات البرمجية الأساسية مثل الحلقات مثل do، for، while، جميع لغات البرمجة في التحكم مثل if-else، وما إلى ذلك
يمكن كتابة الخوارزمية باستخدام هذه التركيبات الشائعة
عادة ما تتم كتابة الخوارزميات بطريقة خطوة بخطوة، ولكن هذا ليس هو الحال دائما
كتابة الخوارزمية هي عملية تحدث بعد تحديد مجال المشكلة بشكل جيد، أي أنه يجب أن تكون على دراية بمجال المشكلة الذي تقوم بتطوير حل له
♦️مثال:
المشكلة: قم بإنشاء خوارزمية تضرب رقمين وتعرض الإخراج
الخطوة 1 : ابدأ
الخطوة 2 : أعلن عن ثلاثة أعداد صحيحة x وy وz
الخطوة 3 : حدد قيم x وy
الخطوة 4 : اضرب قيم x & y
الخطوة 5 : نتيجة تخزين الخطوة 4 إلى z
الخطوة 6 : طباعة z
الخطوة 7 : توقف
ترشد الخوارزميات المبرمجين حول كيفية كتابة التعليمات البرمجية
بالإضافة إلى ذلك، يمكن كتابة نفس الخوارزمية على النحو التالي:
الخطوة 1 : ابدأ
الخطوة 2 : احصل على قيم x وy
الخطوة 3 : z ← x * y
الخطوة 4 : اعرض z
الخطوة 5 : توقف
في تصميم الخوارزمية وتحليلها، تستخدم الطريقة الثانية عادة لوصف الخوارزمية لانها تسمح للمحلل بتحليل الخوارزمية مع تجاهل جميع التعريفات غير المرغوب فيها بسهولة
نتوقف هنا لهذا اليوم، هل تعلمت شيء جديد؟ لا تنس اعادة التغريد حتى يستفيد الجميع 🙏🏼

جاري تحميل الاقتراحات...