C#: أمثلة على لغة C#

1. FizzBuzz

قم بالتكرار من 1 إلى 100: اطبع «Fizz» لمضاعفات العدد 3، و«Buzz» لمضاعفات العدد 5، و«FizzBuzz» لمضاعفات كلا العددين، وإلا اطبع الرقم نفسه.

▶ مثال

CSHARP
using System;

class Program
{
    static void Main()
    {
        for (int i = 1; i <= 100; i++)
        {
            if (i % 15 == 0)
                Console.WriteLine("FizzBuzz");
            else if (i % 3 == 0)
                Console.WriteLine("Fizz");
            else if (i % 5 == 0)
                Console.WriteLine("Buzz");
            else
                Console.WriteLine(i);
        }
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
...
98
Fizz
Buzz

2. متتابعة فيبوناتشي

اطبع أول 20 عددًا من متتابعة فيبوناتشي، حيث يكون كل عدد هو مجموع العددين اللذين يسبقانه.

▶ مثال

CSHARP
using System;

class Program
{
    static void Main()
    {
        int a = 0, b = 1;
        for (int i = 0; i < 20; i++)
        {
            Console.Write(a + " ");
            int temp = a;
            a = b;
            b = temp + b;
        }
        Console.WriteLine();
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181

3. جدول الضرب

اطبع جدول الضرب الكلاسيكي بترتيب مثلثي.

▶ مثال

CSHARP
using System;

class Program
{
    static void Main()
    {
        for (int i = 1; i <= 9; i++)
        {
            for (int j = 1; j <= i; j++)
            {
                Console.Write($"{j}x{i}={i * j}\t");
            }
            Console.WriteLine();
        }
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
1x1=1
1x2=2   2x2=4
1x3=3   2x3=6   3x3=9
1x4=4   2x4=8   3x4=12  4x4=16
1x5=5   2x5=10  3x5=15  4x5=20  5x5=25
1x6=6   2x6=12  3x6=18  4x6=24  5x6=30  6x6=36
1x7=7   2x7=14  3x7=21  4x7=28  5x7=35  6x7=42  7x7=49
1x8=8   2x8=16  3x8=24  4x8=32  5x8=40  6x8=48  7x8=56  8x8=64
1x9=9   2x9=18  3x9=27  4x9=36  5x9=45  6x9=54  7x9=63  8x9=72  9x9=81

4. فحص «برايم»

حدد ما إذا كان العدد الصحيح الموجب الذي أدخله المستخدم عددًا أوليًا، ثم اطبع النتيجة.

▶ مثال

CSHARP
using System;

class Program
{
    static bool IsPrime(int n)
    {
        if (n < 2) return false;
        for (int i = 2; i * i <= n; i++)
        {
            if (n % i == 0) return false;
        }
        return true;
    }

    static void Main()
    {
        int number = 29;
        if (IsPrime(number))
            Console.WriteLine($"{number} is prime");
        else
            Console.WriteLine($"{number} is not prime");

        number = 35;
        if (IsPrime(number))
            Console.WriteLine($"{number} is prime");
        else
            Console.WriteLine($"{number} is not prime");
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
29 is prime
35 is not prime

5. الكشف عن المتناظرات

تحديد ما إذا كانت السلسلة عبارة عن متناظرة (تُقرأ بنفس الطريقة من الأمام ومن الخلف).

▶ مثال

CSHARP
using System;

class Program
{
    static bool IsPalindrome(string s)
    {
        int left = 0, right = s.Length - 1;
        while (left < right)
        {
            if (s[left] != s[right]) return false;
            left++;
            right--;
        }
        return true;
    }

    static void Main()
    {
        string[] tests = { "racecar", "hello", "level", "world" };
        foreach (string t in tests)
        {
            Console.WriteLine($"{t} -> {(IsPalindrome(t) ? "is palindrome" : "is not palindrome")}");
        }
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
racecar -> is palindrome
hello -> is not palindrome
level -> is palindrome
world -> is not palindrome

6. عكس السلسلة

اعكس سلسلة الإدخال واطبع النتيجة.

▶ مثال

CSHARP
using System;

class Program
{
    static string ReverseString(string s)
    {
        char[] arr = s.ToCharArray();
        Array.Reverse(arr);
        return new string(arr);
    }

    static void Main()
    {
        string original = "Hello CSharp";
        string reversed = ReverseString(original);
        Console.WriteLine($"Original: {original}");
        Console.WriteLine($"Reversed: {reversed}");
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
Original: Hello CSharp
Reversed: prahSC olleH

7. عدّ الحروف المتحركة

احسب عدد مرات ظهور أحرف العلة (a، e، i، o، u، بغض النظر عن حالة الأحرف) في سلسلة أحرف.

▶ مثال

CSHARP
using System;

class Program
{
    static int CountVowels(string s)
    {
        int count = 0;
        string vowels = "aeiouAEIOU";
        foreach (char c in s)
        {
            if (vowels.IndexOf(c) >= 0)
                count++;
        }
        return count;
    }

    static void Main()
    {
        string text = "Hello World Programming";
        int result = CountVowels(text);
        Console.WriteLine($"String: {text}");
        Console.WriteLine($"Vowel count: {result}");
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
String: Hello World Programming
Vowel count: 6

8. عمليات الإدخال/الإخراج للملفات

شرح العمليات الأساسية لكتابة وقراءة الملفات النصية.

▶ مثال

CSHARP
using System;
using System.IO;

class Program
{
    static void Main()
    {
        string path = "test.txt";
        string[] lines = { "First line", "Second line", "Third line" };

        File.WriteAllLines(path, lines);
        Console.WriteLine("Write complete");

        string[] readLines = File.ReadAllLines(path);
        Console.WriteLine("Read content:");
        foreach (string line in readLines)
        {
            Console.WriteLine(line);
        }

        File.Delete(path);
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
Write complete
Read content:
First line
Second line
Third line

9. لعبة تخمين الأرقام

يقوم البرنامج بتوليد عدد صحيح عشوائي يتراوح بين 1 و100. يقوم اللاعب بتخمين الأرقام، ويقدم البرنامج تلميحات تشير إلى ما إذا كان التخمين أعلى من الرقم الصحيح أم أقل منه، حتى يتم العثور على الرقم الصحيح.

▶ مثال

CSHARP
using System;

class Program
{
    static void Main()
    {
        Random rnd = new Random(42);
        int target = rnd.Next(1, 101);
        int[] guesses = { 50, 75, 62, 68, 71, 73, 72 };
        int attempts = 0;

        Console.WriteLine($"Target number: {target} (shown for demo only)");
        Console.WriteLine("---");

        foreach (int guess in guesses)
        {
            attempts++;
            if (guess < target)
                Console.WriteLine($"Attempt {attempts}: {guess} - Too low");
            else if (guess > target)
                Console.WriteLine($"Attempt {attempts}: {guess} - Too high");
            else
            {
                Console.WriteLine($"Attempt {attempts}: {guess} - Correct!");
                break;
            }
        }
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
Target number: 72 (shown for demo only)
---
Attempt 1: 50 - Too low
Attempt 2: 75 - Too high
Attempt 3: 62 - Too low
Attempt 4: 68 - Too low
Attempt 5: 71 - Too low
Attempt 6: 73 - Too high
Attempt 7: 72 - Correct!

10. حاسبة درجات الطلاب

بناءً على مجموعة من درجات الطلاب، احسب المتوسط والأعلى والأدنى من الدرجات.

▶ مثال

CSHARP
using System;
using System.Linq;

class Program
{
    static void Main()
    {
        double[] scores = { 85.5, 92.0, 78.5, 96.0, 88.0, 73.5, 91.0 };

        double average = scores.Average();
        double max = scores.Max();
        double min = scores.Min();

        Console.WriteLine("Student grades: " + string.Join(", ", scores));
        Console.WriteLine($"Average: {average:F1}");
        Console.WriteLine($"Highest: {max:F1}");
        Console.WriteLine($"Lowest: {min:F1}");
    }
}
▶ جرّب الكود
TEXT 📖 للعرض فقط
Student grades: 85.5, 92, 78.5, 96, 88, 73.5, 91
Average: 86.4
Highest: 96.0
Lowest: 73.5

❓ أسئلة شائعة

س كيف يمكنني تشغيل أمثلة لغة C# هذه؟
ج انسخ الكود إلى ملف .cs وقم بتشغيله باستخدام الأمر dotnet run، أو استخدم مُركِّب لغة C# عبر الإنترنت مثل dotnetfiddle.net.
س هل يمكنني تعديل الأمثلة ومشاهدة النتائج؟
ج نعم! احفظ الملف وقم بتشغيل الأمر dotnet run مرة أخرى. يتم ترجمة لغة C# إلى بايت كود، لذا تظهر التغييرات على الفور.
س أين توجد الأمثلة الأطول؟
ج انظر الدرس 36 — المشروع النهائي. لا يضم هذا الفهرس سوى مقتطفات قصيرة تتناول مفهومًا واحدًا.

📖 ملخص

📝 تمارين

  1. اختر أي مثال، وقم بتعديله، ثم قم بتوثيق السلوك الجديد في تعليق.
  2. اجمع بين مثالين (مثل: المتغيرات + الأحداث) في برنامج واحد.
  3. أنشئ صفحة نموذجية خاصة بك لتوضيح مفهوم تجده محيرًا.
Web-Tutorial.com

فريق Web-Tutorial التقني

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

100%