ادخال البيانات في لغة السي بلس بلس

في هذا الموضوع سنشرح كيفية ادخال البيانات من المستخدم في لغة السي بلس بلس…

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

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

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

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

ادخال البيانات من المستخدم في لغة السي بلس بلس

يمكن استخدام عدة طرق لإدخال البيانات في لغة السي بلس بلس، ومن أهمها:

جملة cin:

جملة “cin” تستخدم في لغة السي بلس بلس لإدخال البيانات من خلال لوحة المفاتيح. وتتبع جملة “cin” بالمتغير الذي يتم إدخال البيانات إليه.

على سبيل المثال، إذا كان لدينا متغير يسمى “age” من النوع integer ونريد إدخال قيمة العمر من المستخدم، يمكن استخدام جملة “cin” كالتالي:

#include <iostream>
using namespace std;

int main()
{
    int age;
    cout << "Enter your age: ";
    cin >> age;
    cout << "Your age is " << age << endl;
    return 0;
}

في هذا المثال، يتم إنشاء متغير “age” من النوع integer ويتم استخدام جملة “cout” لطباعة رسالة تطلب من المستخدم إدخال قيمة العمر. ثم يتم استخدام جملة “cin” لإدخال القيمة التي يدخلها المستخدم وتخزينها في المتغير “age”. أخيرًا، يتم استخدام جملة “cout” مرة أخرى لطباعة قيمة المتغير “age” على الشاشة.

يمكن استخدام جملة “cin” لإدخال العديد من أنواع البيانات، مثل integers و floating point numbers و characters و strings. ويجب التأكد من استخدام النوع الصحيح للمتغير الذي يتم إدخال القيمة إليه.

دالة gitline():

دالة getline() هي دالة في لغة السي بلس بلس تستخدم لقراءة سلسلة نصية من مدخلات المستخدم (مثل لوحة المفاتيح) وتخزينها في متغير نصي. تأخذ الدالة مدخلين:

getline(cin, variable);

حيث تكون “cin” هي المدخل الذي يحدد مصدر البيانات (عادة ما يكون لوحة المفاتيح)، وتكون “variable” هي المتغير النصي الذي يتم تخزين البيانات فيه.

على سبيل المثال، إذا كان لدينا متغير نصي يسمى “name” ونريد إدخال اسم المستخدم من خلال دالة getline()، يمكن استخدام الكود التالي:

#include <iostream>
#include <string>
using namespace std;

int main()
{
    string name;
    cout << "Enter your name: ";
    getline(cin, name);
    cout << "Hello, " << name << "!" << endl;
    return 0;
}

في هذا المثال، يتم إنشاء متغير نصي “name” ويتم استخدام جملة “cout” لطباعة رسالة تطلب من المستخدم إدخال اسمه. ومن ثم يتم استخدام دالة getline() لإدخال النص الذي يدخله المستخدم وتخزينه في المتغير “name”. أخيرًا، يتم استخدام جملة “cout” لطباعة رسالة ترحيبية تحتوي على اسم المستخدم.

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

استخدام الوسائط المعطاة في السطر الأمر (Command Line Arguments):

في لغة السي بلس بلس، تستخدم الوسائط المعطاة في السطر الأمر (Command Line Arguments) لتمكين المستخدم من تمرير بعض المعلومات إلى البرنامج عند تشغيله. يتم تمرير هذه المعلومات عن طريق كتابتها في سطر الأمر CMD عند تشغيل البرنامج.

لتمرير الوسائط المعطاة في السطر الأمر، يتم تعريف دالة main() بهذا الشكل:

int main(int argc, char* argv[])

حيث تحتوي الدالة على وسيطتين، وهي:

يمكن الوصول إلى الوسائط المعطاة في السطر الأمر (Command Line Arguments) في دالة main() باستخدام المصفوفة argv[] ومتغير argc كالتالي:

#include <iostream>

int main(int argc, char* argv[]) {
    // عرض عدد الوسائط المعطاة في السطر الأمر
    std::cout << "عدد الوسائط المعطاة: " << argc << std::endl;

    // عرض الوسائط المعطاة في السطر الأمر
    for (int i = 0; i < argc; i++) {
        std::cout << "الوسيطة " << i << ": " << argv[i] << std::endl;
    }

    return 0;
}

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

إذا تم تشغيل البرنامج باستخدام الأمر التالي في CMD:

./program.exe arg1 arg2 arg3

سيتم عرض النتيجة التالية:

عدد الوسائط المعطاة: 4
الوسيطة 0: ./program.exe
الوسيطة 1: arg1
الوسيطة 2: arg2
الوسيطة 3: arg3

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

#include <iostream>

int main(int argc, char* argv[]) {
    // تحقق من وجود وسيطة "run" في السطر الأمر
    if (argc > 1 && std::string(argv[1]) == "run") {
        std::cout << "تم تشغيل البرنامج!" << std::endl;
    } else {
        std::cout << "لم يتم تشغيل البرنامج." << std::endl;
    }

    return 0;
}

في هذا المثال، يتم التحقق من وجود الوسيطة “run” في السطر الأمر باستخدام جملة if. إذا تم تشغيل البرنامج باستخدام الأمر التالي في الشاشة السوداء CMD:

./program.exe run

سيتم عرض النتيجة التالية:

تم تشغيل البرنامج!

وإذا تم تشغيل البرنامج بأي أمر آخر، سيتم عرض النتيجة التالية:

لم يتم تشغيل البرنامج.

هذا والسلام عليكم ورحمة الله وبركاته…

( لا تنسا مشاركة الموضوع ليستفيد غيرك )

Exit mobile version