قبول إدخال المستخدم
نصيحة
راجع علامة التبويب النص والصور لمزيد من التفاصيل!
تصبح البرامج قوية حقا عندما يمكنها التفاعل مع الأشخاص الذين يستخدمونها. تتيح لك طريقة C#'s Console.ReadLine() إيقاف البرنامج مؤقتا، والانتظار حتى يقوم المستخدم بكتابة شيء ما، والتقاط هذه المعلومات.
استخدام Console.ReadLine()
فكر في Console.ReadLine() الأسلوب كمطالبة بالسؤال. عندما يصل البرنامج إلى هذا السطر، فإنه ينتظر حتى يكتب المستخدم إجابته ويضغط على المفتاح Enter قبل المتابعة.
لحفظ إجابة المستخدم، يجب "التقاطها" باستخدام متغير:
string favoriteColor = Console.ReadLine();
Console.WriteLine("Oh, I love " + favoriteColor + " too!");
في هذه التعليمة البرمجية، favoriteColor هو متغير (حاوية تحتوي على قيمة). عند تشغيل هذا البرنامج، فإنه ينتظر الإدخال. إذا كان المستخدم يكتب Orange ويضغط على مفتاح الإدخال Enter، فإن الإخراج هو:
Orange
Oh, I love Orange too!
يمكنك محاولة تشغيل هذه التعليمة البرمجية بنفسك في محرر التعليمات البرمجية C#.
إضافة مسافة في نهاية المطالبة
لجعل إدخال المستخدم أكثر قابلية للقراءة، ادمج Console.Write() مع Console.ReadLine():
Console.Write("What is your favorite color? ");
string favoriteColor = Console.ReadLine();
Console.WriteLine("Oh, I love " + favoriteColor + " too!");
لاحظ المسافة في نهاية المطالبة: "What is your favorite color? ". بدونه، سيبدو إدخال المستخدم ملتصقا بالنص الخاص بك: What is your favorite color?Orange. إضافة مسافة يجعل الأمر أكثر وضوحا.
فهم أنواع البيانات
تحتوي كل قيمة في C# على نوع بيانات، والذي يخبر الكمبيوتر بنوع القيمة. بعض أنواع البيانات الشائعة هي:
-
سلسلة (
string): نص ملتف بعلامات اقتباس، مثل"Blue"أو"25". حتى الرقم يصبح نصا عندما يكون داخل علامات الاقتباس. -
عدد صحيح (
int): رقم كامل بدون علامات اقتباس، مثل25أو100. يمكنك القيام بالرياضيات مع هذه.
لماذا هذا مهم؟ يعامل C# هذه الأنواع بشكل مختلف. يمكنك إضافة أرقام معا (25 + 1 تساوي 26)، ولكن لا يمكنك إضافة رقم إلى النص مباشرة دون معالجة خاصة.
يقوم Console.ReadLine() بإرجاع سلسلة دائما
قاعدة أساسية يجب تذكرها هي أن Console.ReadLine()تقوم دائما بإرجاع نص (سلسلة)، حتى إذا كان المستخدم يكتب رقما. على سبيل المثال:
string age = Console.ReadLine();
Console.WriteLine(age + 1); // This causes an error!
إذا قمت بتشغيل هذه التعليمة البرمجية واكتبت 25، فلن يطبع 26البرنامج . بدلا من ذلك، يحاول إضافة 1 إلى النص "25"، والذي لا يسمح به C#. هذا خطأ شائع للمبتدئين!
لإجراء العمليات الحسابية باستخدام إدخال المستخدم، ستحتاج إلى تحويل النص إلى رقم أولا - لكننا سنغطي ذلك لاحقا. في الوقت الحالي، تذكر: أيا كان نوع المستخدم يتم التعامل معه دائما كنص.