loader image
تخطى إلى المحتوى الرئيسي
متطلبات الإكمال

الهدف من الدرس:

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

عمليات الإدخال والإخراج البسيطة:

تعتبر عمليات الإدخال والإخراج (I/O) جوهرية للتفاعل مع المستخدمين في أي برنامج في  C++، وتُستخدم مكتبة iostream  لهذه العملية، حيث يتم التعامل مع الإدخال بواسطة cin  والإخراج بواسطة cout .

الإخراج باستخدام std::cout::

لبدء الإخراج نستخدم مشغل الإدراج <<  لتمرير البيانات إلى جهاز الإخراج القياسي (عادةً ما يكون وحدة التحكم).

#include <iostream>
int main() {
    std::cout << "
مرحباً بالمستخدم!" << std::endl;  // يطبع النص إلى الشاشة
    return 0;
}

 

يشير std::endl  إلى نهاية السطر، ويضيف حرف العودة للنص، مما يحسن من ظهور النص في الإخراج.

الإدخال باستخدام std::cin:

يتم قراءة البيانات باستخدام مشغل الاستخراج >> لاستقبال المعلومات من الإدخال القياسي.

 

#include <iostream>

int main() {
    int age;
    std::cout << "
أدخل عمرك: ";
    std::cin >> age;  //
يقرأ قيمة العدد الذي يدخلها المستخدم ويخزنها في المتغير age
    std::cout << "
لقد قمت بإدخال: " << age << std::endl;
    return 0;
}

 

الهياكل الشرطية:

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

جملة if:

تبدأ بجملة if   للتحقق من شرط محدد، وإذا كان صحيحًا، يتم تنفيذ الكود بين الأقواس {}.

if (age >= 18) {
    std::cout << "
أنت بالغ." << std::endl;
}

 

جملة if-else:

تمكّنك من تحديد تعليمةٍ بديلة إذا كان الشرط غيرَ صحيح.

if (age >= 18) {
    std::cout << "
أنت بالغ." << std::endl;
} else {
    std::cout << "
أنت قاصر." << std::endl;
}

 

سلم else if :

يمكّنك من اختبار شروط متعددة، واحدة خلف الأخرى.

int score = 75;

if (score >= 90) {
    std::cout << "
درجة ممتازة." << std::endl;
} else if (score >= 75) {
    std::cout << "
درجة جيدة جدا." << std::endl;
} else if (score >= 60) {
    std::cout << "
درجة جيدة." << std::endl;
} else {
    std::cout << "
درجة مقبولة أو أقل." << std::endl;
}

الهياكل التكرارية:

التكرار، أو الحلقات التكرارية تتيح لك تكرار قطعة من الكود عدة مرات.

حلقاتfor :

مثالية عندما يكون لديك عدد معروف من التكرارات.

for (int i = 0; i < 5; i++) {
    std::cout << "
التكرار رقم " << i << std::endl;
}

 

حلقات while:

تكرر التعليمات داخلها طالما أنّ الشّرطَ المحدّدَ صحيح، وتكون مفيدة عندما يكون عددُ التكرارات غيرَ معروف مسبقًا.

int count = 0;
while (count < 5) {
    std::cout << "
العدد الحالي " << count << std::endl;
    count++;
}

 

حلقات do-while:

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

int count = 0;do {
    std::cout << "
عدد " << count << std::endl;
    count++;} while (count < 5);

مثال تطبيقي:

لنَرَ مثالاً يجمع بين الجمل الشرطية والحلقات التكرارية:

#include <iostream>

int main() {
    int number;
    std::cout << "
أدخل رقم: ";
    std::cin >> number;
    if (number < 0) {
        std::cout << "
الرقم سالب." << std::endl;
    } else if (number > 0) {
        std::cout << "
الرقم موجب." << std::endl;
    } else {
        std::cout << "
الرقم صفر." << std::endl;
    }
    for (int i = 1; i <= number; i++) {
        std::cout << "
العدد: " << i << std::endl;
    }
    return 0;
}

 

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

 بعد ذلك، يَستخدم حلقة for لطباعةِ تسلسُلٍ من الأرقام يصل إلى العدد المُدخل.

  

المهام والتدريبات:

  • قم بكتابة برنامج يطلب من المستخدم إدخالَ درجته الدراسية ويطبع "ناجح" أو "راسب" بناءً على علامة النجاح المعينة بـ 50.
  • اكتب برنامجاً يطبع تقييم المجموعات بناءً على نقاط الدرجات، مثل "ممتاز" لأكثر من 90.
  • اكتب برنامجًا يقبل رقم إدخال وطباعة أول 10 أرقام بدءًا من الرقم المدخل باستخدام حلقة while.

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