تعلم البرمجة للمبتدئين دالة الإدخال read()

مفهوم الإدخال

في الأمثلة التي كنا نكتبها سابقاً, كنا نكتب الكود ثم نقوم بتشغيله فيتم تنفيذه كاملاً دفعة واحدة, و عند إنتهائه يعرض لنا عبارة Done Execution.

ستتعلم في هذا الدرس كيف تجعل المستخدم يتفاعل مع البرنامج عندما يكون شغالاً. أي ستجعل البرنامج يطلب من المستخدم إدخال معلومات (مثل إسمه, عمره إلخ..), بعدها ستجعله ينتظره ليدخل المعلومات من لوحة المفاتيح (Keyboard).


ما الهدف الحقيقي من هذا الدرس؟

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


كيف نتعامل مع البيانات التي سيدخلها المستخدم؟

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

دالة الإدخال read()

لجعل محرر الكود ينتظر المستخدم ليدخل قيمة إستخدم الدالة read() التي قمنا بتجهيزها خصيصاً لهذا الأمر.


في المثال التالي قمنا ببناء برنامج يطلب من المستخدم إدخال إسمه, بعدها يقوم بإظهار رسالة ترحيب له.

  1. في البداية قمنا بتجهيز متغير إسمه name لأننا سنستخدمه لتخزين الإسم الذي يدخله المستخدم لاحقاً.
  2. بعدها قمنا بعرض جملة له نطلب فيها منه إدخال إسمه.
  3. بعدها قمنا بانتظاره ليدخل الإسم و من ثم قمنا بتخزين ما سيدخله في المتغير name.
  4. في النهاية قمنا بطباعة رسالة ترحيب و دمجناها بإسم المستخدم الذي قمنا بتخزينه في المتغير name.

مثال

var name;

write("Enter your name: ");
name = read();

write("Good morning  " + name); 
        

سنحصل على النتيجة التالية عند التشغيل مع الإشارة إلى أننا قمنا بتلوين القيمة التي أدخلناها عند التشغيل بلون مختلف.

Enter your name: Mhamad
Good morning Mhamad

جرب الكود


معلومة تقنية

الدالة read() مصممة بطريقة ذكية جداً حيث أنها تقوم بتحليل ما يدخله المستخدم و ترجعه بنوع مناسب و هي تعمل كالتالي:

  • إن وجدت أن المستخدم أدخل نص فإنها ستعطيك ما أدخله المستخدم كنص ( string ).
  • إن وجدت أن المستخدم أدخل عدد فإنها ستعطيك ما أدخله المستخدم كعدد ( number ).

الطريقة الأفضل لاستقبال المدخلات

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

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

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


في المثال التالي قمنا ببناء برنامج يطلب من المستخدم إدخال إسمه, بعدها يقوم بإظهار رسالة ترحيب له.
هنا قمنا بتعريف المتغير الذي سنضع الإسم الذي يدخله المستخدم فيه مباشرةً عند استدعاء الدالة read().

مثال

write("Enter your name: ");
var name = read();

write("Good morning  " + name); 
        

سنحصل على النتيجة التالية عند التشغيل مع الإشارة إلى أننا قمنا بتلوين القيمة التي أدخلناها عند التشغيل بلون مختلف.

Enter your name: Mhamad
Good morning Mhamad

جرب الكود

تمارين شاملة

التمرين الأول

أكتب برنامج يطلب من المستخدم إعطاؤه عددين و من بعدها يعرض له ناتج جمعهما.

الحل و التفسير »


التمرين الثاني

أكتب برنامج يطلب من المستخدم إدخال إسمه و مهنته و عمره, ثم يعرض له المعلومات التي قام هو بإدخالها بشكل مرتب.

الحل و التفسير »

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة