• 0

كيف أظهر رسالة خطأ عند إدخال المستخدم لقيمة نصية في مصفوفة أرقام على #C؟

لدي مصفوفة أرقام على تطبيق #C، وأريد من المستخدم ملْء هذه الأخيرة شرط أن أُظهر له رسالة خطأ عند إدخاله لقيمة نصية وليس رقمية، كيف أفعل ذلك؟

هذه محاولتي الفاشلة :

static void Main(string[] args)
    {
        // array
        int[] ft = new int[2];

        for (int i = 0; i < 2; i++)
        {
            Console.WriteLine("number:");
            ft[i] = Convert.ToInt32(Console.ReadLine()); 
        }
        Console.Read();
    }

 

تمّ تعديل بواسطة K@m@l

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

عليك بتغيير السطر التالي :

ft[i] = Convert.ToInt32(Console.ReadLine())

بهذه الشفرة :

string input = Console.ReadLine();
if (input == "*")  
    break; 
int number;
if (!int.TryParse(input, out number))  {
    Console.WriteLine("not a number");
    
}
else
{
    ft[i] = number;
}

ليصبح الكود الصحيح، على الشكل التالي:

static void Main(string[] args)
    {
        // array
        int[] ft = new int[2];

        for (int i = 0; i < 2; i++)
        {
            Console.WriteLine("number:");
             string input = Console.ReadLine();
            if (input == "*") // عليك التأكد من أن المستخدم لم يضغط على "*" لإنهاء التطبيق
                break; //   الخروج من الحلقة;
            
            int number;
            if (!int.TryParse(input, out number)) // التحقق من المدخلات
            {
                Console.WriteLine("not a number");
                // إظهار رسالة تفيد بأنه أدخر قيمة غير رقمية;
            }
            else
            {
                ft[i] = number;
            }
        }
        Console.Read();
    }

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن