Arabic flag
Arabic
Select a Language
Arabic flag
Arabic
English flag
English
$
USD
Select a Currency
United States Dollar
$
Egypt Pound
ج.م.
Saudi Arabia Riyal
ر.س.
United Arab Emirates dirham
د.إ.
Oman Rial
.ر.ع
0
دورة أساسيات Problem Solving

دورة أساسيات Problem Solving

الأساس الذي تحتاجه لفهم المشكلات وتحليلها قبل الوصول إلى الحل البرمجي.
0 طلاب
47 Lectures

ماذا ستتعلم؟

فهم طريقة التفكير البرمجي وتحليل المسائل بدلًا من حفظ الحلول الجاهزة.
التعامل مع الحلقات التكرارية والجمل الشرطية لبناء منطق الحل خطوة بخطوة.
حل مسائل عملية على الأرقام، المصفوفات، والقوائم النصية.
اكتشاف العناصر المتكررة والفريدة والتعامل مع البيانات داخل Arrays و Lists.
بناء خوارزميات تعتمد على المقارنات، العدادات، والتكرار المتداخل.
التعامل مع النصوص واستخراج الحروف والاختصارات ومعالجة الـ Strings برمجيًا.
فهم أساسيات مسائل الـ Problem Solving الشائعة المستخدمة في التدريب والمقابلات التقنية.
تحسين القدرة على تحويل أي فكرة أو مسألة إلى خطوات قابلة للتنفيذ داخل الكود.

About This Course

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

دورة Problem Solving هي دورة عملية مكوّنة من 47 حلقة، صُمّمت لبناء مهارة التفكير البرمجي وتحليل المسائل خطوة بخطوة، من خلال تطبيقات متنوعة على الأرقام، المصفوفات، النصوص، الحلقات التكرارية، والشروط المنطقية باستخدام أسلوب تدريجي واضح يركّز على الفهم الحقيقي.

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

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

هذه الدورة مناسبة بشكل خاص لمن بدأوا تعلُّم البرمجة بالفعل لكنهم يواجهون صعوبة في حل المسائل العملية، ولطلاب كليات الحاسبات والمعلومات في المراحل الأولى، ولمتعلمي Python أو Java أو C++ الذين يريدون تقوية أساس  هذه المهارة لديهم قبل الدخول في مستويات أكثر تعقيدًا مثل الخوارزميات وهياكل البيانات.

المتطلبات

معرفة أولية بإحدى لغات البرمجة، مثل C++ أو Java أو Python، دون اشتراط مستوى متقدم.
القدرة على قراءة كود بسيط وفهم فكرته العامة، حتى لو لم يكن قادرًا على كتابته بطلاقة.
استعداد ذهني للتفكير والتحليل وعدم الاكتفاء بحفظ الحلول الجاهزة.
المتطلبات

التعليمات

Check the frequently asked questions about this course.

هل يركّز هذا الكورس على حفظ حلول جاهزة أم على تعلُّم طريقة التفكير؟
يركّز الكورس على بناء طريقة التفكير المنطقي قبل الوصول إلى أي حل برمجي. كل مسألة تُستخدم كوسيلة لفهم كيفية تحليل المعطيات وترتيب الخطوات، وليس كحل يُحفظ ويُعاد استخدامه دون فهم.
أنا أعرف أساسيات لغة برمجة، لكنني أتوقف أمام المسائل، هل الكورس مناسب لي؟
نعم، لأن المشكلة في هذه الحالة لا تكون في اللغة البرمجية، بل في غياب منهج واضح للتعامل مع المشكلات. الكورس موجّه لمن يمتلك معرفة أولية بالبرمجة لكنه يحتاج إلى تأسيس قوي في تحليل المسائل.
هل محتوى الكورس نظري أم يعتمد على التطبيق؟
المحتوى يعتمد على طرح الأفكار منطقيًا ثم تحويلها إلى خطوات قابلة للتنفيذ داخل الكود. التركيز الأساسي يكون على فهم الفكرة وتسلسل الحل، وليس على عرض النتيجة النهائية فقط.
هل هذا الكورس مناسب للمبتدئين تمامًا؟
الكورس مناسب لمن بدأ بالفعل تعلُّم البرمجة أو يدرس إحدى لغاتها، لكنه ليس مخصصًا لمن لم يتعامل من قبل مع أي مفاهيم برمجية. الهدف هو بناء التفكير، لا تعلّم لغة من الصفر.
هل الكورس مرتبط بلغة برمجة معيّنة؟
لا، الأفكار والمنطق المستخدمان في الكورس مستقلان عن أي لغة برمجية. ما تتعلّمه يمكن تطبيقه على أي لغة لاحقًا.
هل المسائل المطروحة في الكورس تشبه ما يُقابَل في الدراسة أو الاختبارات؟
نعم، المسائل المختارة تمثّل أنماطًا شائعة تظهر في الدراسة الأكاديمية، والتدريب العملي، والمسائل التمهيدية للخوارزميات، مثل التعامل مع الأرقام والمصفوفات والتفكير المتكرر.
ماذا سأستفيد عمليًا بعد إنهاء الكورس؟
ستصبح قادرًا على التعامل مع المسائل بثقة أكبر، وفهم كيفية البدء في الحل، وترتيب الأفكار، وتحويل المشكلة إلى خطوات واضحة بدلًا من الشعور بالتشتُّت أو التوقف أمامها.
عبدالرحمن الجيزاوي
عبدالرحمن الجيزاوي
3 الدورات
0 طلاب
عبدالرحمن الجيزاوي
Curriculum Overview

This course includes 4 modules, 47 lessons, and 0 hours of materials.

أساسيات التفكير المنطقي وتحليل الأرقام
10 أقسام
1. التفكير قبل الحل
مجانًا

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



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

مقدار -
2. حل واحد… بأكثر من طريق

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



أشرح لك الفكرة من خلال الجمع والطرح، وكيف يمكن لناتج الجمع أن يعمل كمرحلة مؤقتة نعيد منها القيم الأصلية بترتيب دقيق للخطوات.



سنطبّق هذا المنطق على المسألة نفسها خطوة بخطوة، لتلاحظ أن ترتيب التنفيذ هو العامل الحاسم في نجاح الحل، وليس التعقيد.

مقدار -
3. التبديل بالضرب والقسمة

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



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



في ختام الحلقة أركّز معك على أهمية تسلسل الخطوات، والتمييز بين القيمة القديمة والقيمة الجديدة لكل متغير، تمهيدًا لتطبيق المنطق نفسه على مسألة جديدة في الحلقة التالية.

مقدار -
4. فهم القسمة ومعنى الباقي

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



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



في نهاية الحلقة أؤكد أن ما تناولناه هو الأساس الذي سنبني عليه في الحلقة التالية عند الانتقال إلى الاستخدامات والتطبيقات العملية.

مقدار -
5. الفرق بين القسمة وباقي القسمة

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



الهدف هنا أن تفهم ماذا تهتم به كل عملية، وما الذي تعيده فعليًا.



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



في نهاية الحلقة أمهّد لك لاستخدام هذه الفكرة مباشرة في المسألة التالية الخاصة بالحمل.

مقدار -
6. عكس الأرقام خطوة بخطوة

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



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



في نهاية الحلقة أؤكد أن الفكرة المنطقية اكتملت، على أن يتم تنفيذها برمجيًا بالتفصيل في الحلقة التالية.

مقدار -
7. التطبيق العملي لعكس الأرقام

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



كما أربط بين هذه الخطوات وبين حذف الرقم الأخير من العدد الأصلي بعد استخراجه، بحيث يتناقص العدد تدريجيًا بينما يكتمل الناتج المعكوس خطوة بخطوة.



في نهاية الحلقة تتضح الفكرة كاملة، تمهيدًا لتطبيقها عمليًا داخل الكود في الحلقة التالية.

مقدار -
8. التفرقة بين الأعداد الزوجية والفردية

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



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



في نهاية الحلقة يتضح أن الحل قائم على تكرار خطوات بسيطة ومنطقية، تمهيدًا لتطبيقها عمليًا داخل الكود في الحلقة التالية.

مقدار -
9. فهم متسلسلة فيبوناتشي وبناؤها منطقيًا

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



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



في نهاية الحلقة تكون الفكرة واضحة من حيث المنطق والترتيب، بحيث تصبح جاهزًا لتطبيقها بسهولة داخل أي كود.

مقدار -
10. فهم الأعداد الأولية والتحقق منها

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



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



في نهاية الحلقة تتضح لك فكرة الحل المنطقي الأسرع، تمهيدًا للتعرّف على طريقة أخرى لمعالجة المسألة في الحلقة التالية.

مقدار -
أساسيات التعامل مع المصفوفات والتكرار
10 أقسام
11. حساب مجموع عناصر المصفوفة

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



أوضّح لك كيف نتحرك من أول عنصر في المصفوفة حتى آخر عنصر اعتمادًا على طولها، وفي كل خطوة نضيف قيمة العنصر الحالي إلى المجموع.



مع انتهاء الحلقة، تكون قيمة المتغير النهائي قد جمعت كل العناصر، ونكون جاهزين لرؤية هذه الفكرة مطبّقة عمليًا داخل الكود.

مقدار -
12. طباعة الأعداد الزوجية والفردية

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



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



في نهاية الحلقة تتضح لك الفكرة كاملة من حيث الترتيب والمنطق، تمهيدًا لرؤية التطبيق العملي داخل الكود.

مقدار -
13. التحقق من تساوي مصفوفتين

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



بعد ذلك أوضح لك كيفية مقارنة العناصر المناظرة داخل المصفوفتين باستخدام حلقة تكرار، بحيث يتم فحص كل عنصر مع نظيره. إذا ظهر أي اختلاف نُنهي التحقق مباشرة، وإذا انتهت المقارنة دون اختلاف نعتبر المصفوفتين متساويتين.



في نهاية الحلقة تكون خطوات الحل واضحة ومنظمة وجاهزة للتطبيق البرمجي.

مقدار -
14. إيجاد الرقم المفقود

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



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



في نهاية الحلقة تكون الخطوات منطقية ومباشرة، وجاهزة للتطبيق البرمجي دون أي تعقيد.

مقدار -
15. إيجاد أكبر وأصغر قيمة

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



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

مقدار -
16. اكتشاف العناصر المكررة داخل المصفوفة

في هذه الحلقة سأشرح لك طريقة التفكير التي تساعدك على اكتشاف العناصر المكررة داخل المصفوفة دون البحث العشوائي أو الاعتماد على الملاحظة المباشرة. سنأخذ مثالًا عمليًا ونحوّل فكرة المقارنة بين العناصر إلى خطوات منطقية يستطيع البرنامج تنفيذها بنفسه.



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

مقدار -
17. حساب تكرار الحروف داخل النصوص

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



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

مقدار -
18. إيجاد الأزواج التي تحقق المجموع المطلوب

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



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

مقدار -
19. حساب المتوسط بعد استبعاد القيم القصوى

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



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

مقدار -
20. عدّ الأرقام الموجبة وجمع السالبة

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



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

مقدار -
معالجة النصوص والمسائل المنطقية المتقدمة
10 أقسام
21. تحويل الاسم الكامل إلى اختصار

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



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

مقدار -
22. حذف الحروف المتحركة من النصوص

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



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

مقدار -
23. استخراج مضاعفات الأرقام

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



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

مقدار -
24. التحقق من المربع الكامل

في هذه الحلقة سأشرح لك فكرة المربع الكامل وكيف يمكن للبرنامج التحقق منه بطريقة منطقية وبسيطة. سنبدأ أولًا بفهم العلاقة بين الرقم وجذره التربيعي، ولماذا يُعتبر بعض الأرقام فقط ناتجًا لضرب عدد صحيح في نفسه.



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

مقدار -
25. إيجاد العنصر الأكثر تكرارًا

في هذه الحلقة سأشرح لك طريقة اكتشاف العنصر الأكثر تكرارًا داخل المصفوفة باستخدام منطق برمجي منظم بدلًا من الاعتماد على الملاحظة المباشرة. سنأخذ مثالًا عمليًا ونحوّل عملية العد والمقارنة إلى خطوات يستطيع البرنامج تنفيذها تلقائيًا مهما كان حجم البيانات أو مصدرها.



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

مقدار -
26. التحقق من صلاحية تكوين المثلث

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



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

مقدار -
27. عكس الأرقام خطوة بخطوة

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



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

مقدار -
28. حساب الخانات الزوجية والفردية داخل الرقم

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



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

مقدار -
29. بناء متتالية فيبوناتشي

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



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

مقدار -
30. التحقق من الأعداد الأولية

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



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

مقدار -
تطبيقات متقدمة على القوائم وتحليل البيانات
17 أقسام
31. البحث داخل المصفوفات

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



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

مقدار -
32. اكتشاف الرقم المفقود داخل السلسلة

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



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

مقدار -
33. حساب مجموع عناصر المصفوفة

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



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

مقدار -
34. إيجاد أكبر وأصغر قيمة داخل المصفوفة

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



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

مقدار -
35. استخراج العناصر غير المتكررة من القائمة

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



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

مقدار -
36. حساب تكرار الحروف داخل النص

في هذه الحلقة سأشرح لك طريقة ذكية لحساب عدد مرات تكرار حرف معيّن داخل أي نص دون الحاجة إلى المرور على الحروف واحدًا تلو الآخر باستخدام الحلقات التكرارية التقليدية. سنعتمد بدلًا من ذلك على فكرة أبسط تعتمد على مقارنة طول النص قبل وبعد حذف الحرف المطلوب.



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

مقدار -
37. إيجاد الأزواج التي تحقق المجموع المطلوب

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



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

مقدار -
38. استخراج العناصر المتكررة من المصفوفة

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



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

مقدار -
39. حساب المجموع بعد استبعاد أكبر وأصغر قيمة

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



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

مقدار -
40. تصفية البيانات وتحديث القيم أثناء التكرار

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



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

مقدار -
41. إنشاء اختصارات الأسماء برمجيًا

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



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

مقدار -
42. حذف حروف محددة من النصوص

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



كما ستتعرف على كيفية استخدام الحلقات التكرارية لمعالجة الحروف واحدًا تلو الآخر، وتحديث النص تدريجيًا حتى يتم تنظيفه بالكامل من الأحرف المطلوبة. ومن خلال هذا التطبيق، ستفهم أسلوبًا عمليًا مهمًا في معالجة النصوص والتعامل مع البيانات النصية داخل البرمجة.

مقدار -
43. بناء القوائم وإضافة العناصر تلقائيًا

في هذه الحلقة سأشرح لك فكرة مهمة في التعامل مع القوائم والمصفوفات، وهي كيفية إنشاء البيانات وإضافتها بشكل متتالي داخل القائمة بدل كتابتها يدويًا عنصرًا عنصرًا. سنعتمد على الحلقات التكرارية لتنفيذ عملية الإضافة بشكل تلقائي ومنظم حسب عدد مرات محدد مسبقًا.



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

مقدار -
44. التحقق من الأعداد الأولية بالعوامل والقواسم

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



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

مقدار -
45. العثور على العنصر الأكثر تكرارًا

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



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

مقدار -
46. التحقق من القيم الحدية الفريدة

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



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

مقدار -
47. تصنيف الأعداد إلى زوجية وفردية

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



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

مقدار -
الشهادات
1 أقسام
شهادة الدورة
شهادة الدورة
If you pass all the lessons in this course, you will receive this certificate.
النوع شهادة الدورة
Reply to Comment
Comments Approval

Your comment will be visible after admin approval.

0
0 المراجعات
جودة المحتوى (0)
مهارات المدرب (0)
قيمة الشراء (0)
جودة الدعم (0)
Reply to Review
Submit Reply

Your reply to this review will be visible to all users.

دورة أساسيات Problem Solving
30 $
الإشتراك

تشمل هذه الدورة

شهادة رسمية
دعم المدرب
مفضلة
شارك

مواصفات الدورة

Lessons
47
مدة
2:24 ساعات
Access Duration
365 أيام
Updated Date
19/05/2026

إرسال الدورة كهدية

Send as a gift to friends
دورة أساسيات Problem Solving
You are viewing
دورة أساسيات Problem Solving