Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

التحقق من وجود عنصر

جزء من قسم Logic & Flow في رحلة C# على Coddy — الدرس 59 من 66.

تتحقق الطريقة Contains(element) مما إذا كان عنصر معين موجوداً في الـ HashSet. وهي تعيد القيمة true إذا تم العثور على العنصر، و false بخلاف ذلك.

قم بإنشاء HashSet فارغة:

HashSet<string> fruits = new HashSet<string>();

أضف بعض العناصر إلى HashSet:

fruits.Add("Apple");
fruits.Add("Banana");

تحقق مما إذا كان العنصر موجوداً:

bool hasApple = fruits.Contains("Apple");  // يعيد true
bool hasOrange = fruits.Contains("Orange"); // يعيد false

يمكنك استخدام النتيجة في الجمل الشرطية:

if (fruits.Contains("Apple"))
{
    Console.WriteLine("Apple is in the set");
}
challenge icon

التحدي

سهل

قم بإنشاء طريقة (method) تسمى ElementExists تأخذ وسيطين:

  • HashSet من السلاسل النصية (set)
  • سلسلة نصية (element) للتحقق منها

يجب أن تتحقق الطريقة مما إذا كان العنصر موجوداً في المجموعة وتعيد رسالة نصية:

  • إذا كان العنصر موجوداً، فقم بإرجاع "The element 'X' exists in the set"
  • إذا لم يكن العنصر موجوداً، فقم بإرجاع "The element 'X' does not exist in the set"

حيث 'X' هي قيمة العنصر الفعلية التي يتم التحقق منها.

ورقة مرجعية

تتحقق الطريقة Contains(element) مما إذا كان عنصر معين موجوداً في الـ HashSet. وهي تعيد القيمة true إذا تم العثور على العنصر، و false بخلاف ذلك.

إنشاء HashSet فارغ:

HashSet<string> fruits = new HashSet<string>();

إضافة عناصر إلى الـ HashSet:

fruits.Add("Apple");
fruits.Add("Banana");

التحقق مما إذا كان العنصر موجوداً:

bool hasApple = fruits.Contains("Apple");  // تعيد true
bool hasOrange = fruits.Contains("Orange"); // تعيد false

الاستخدام في الجمل الشرطية:

if (fruits.Contains("Apple"))
{
    Console.WriteLine("Apple is in the set");
}

جرّب بنفسك

using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;

public class Program
{
    public static string ElementExists(HashSet<string> set, string element)
    {
        // اكتب الكود الخاص بك هنا
        return "";
    }
    
    public static void Main()
    {
        // قراءة السطر الأول للتحقق مما إذا كان بتنسيق JSON
        string firstLine = Console.ReadLine();
        string elementToCheck = Console.ReadLine();
        HashSet<string> set = new HashSet<string>();
        
        // التحقق مما إذا كان الإدخال بتنسيق مصفوفة JSON
        if (firstLine != null && firstLine.StartsWith("[") && firstLine.EndsWith("]"))
        {
            try
            {
                // استخراج المحتوى بين الأقواس المربعة
                string arrayContent = firstLine.Substring(1, firstLine.Length - 2);
                
                // استخدام التعبيرات النمطية (regex) لمطابقة جميع السلاسل النصية المقتبسة
                MatchCollection matches = Regex.Matches(arrayContent, @"""([^""]*)""");
                
                foreach (Match match in matches)
                {
                    // إضافة المجموعة الملتقطة (بدون علامات الاقتباس)
                    if (match.Groups.Count > 1)
                    {
                        set.Add(match.Groups[1].Value.Trim());
                    }
                }
                
                // التحقق مما إذا كان العنصر بتنسيق سلسلة نصية JSON
                Match elementMatch = Regex.Match(elementToCheck, @"""([^""]*)""");
                if (elementMatch.Success && elementMatch.Groups.Count > 1)
                {
                    elementToCheck = elementMatch.Groups[1].Value;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error parsing JSON input: {ex.Message}");
                return;
            }
        }
        else
        {
            // معالجة الإدخال التقليدي المفصول بفاصلة
            string[] elements = firstLine.Split(',');
            foreach (string element in elements)
            {
                set.Add(element.Trim());
            }
        }
        
        string result = ElementExists(set, elementToCheck);
        Console.WriteLine(result);
    }
}
quiz iconاختبر نفسك

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

جميع دروس Logic & Flow