الحلقات

الحلقات تسمح لك بتكرار تنفيذ كود عدة مرات. في هذا الدرس، سنتعلم أنواع الحلقات الأساسية في Java.

حلقة for

JAVA
for (التهيئة; الشرط; الخطوة) {
    // يتم تنفيذ هذا الكود في كل تكرار
}

مثال: طباعة الأرقام 1 إلى 5

JAVA
for (int i = 1; i <= 5; i++) {
    System.out.println(i);
}
▶ جرّب الكود

الناتج:

TEXT
1
2
3
4
5

مثال: مجموع الأرقام من 1 إلى 100

JAVA
int sum = 0;
for (int i = 1; i <= 100; i++) {
    sum += i;
}
System.out.println("المجموع: " + sum);  // 5050
▶ جرّب الكود

حلقة for مع خطوة مختلفة

JAVA
// زيادة بمقدار 2
for (int i = 0; i <= 10; i += 2) {
    System.out.println(i);  // 0, 2, 4, 6, 8, 10
}

// نقص بمقدار 1
for (int i = 10; i >= 0; i--) {
    System.out.println(i);  // 10, 9, 8, ..., 1, 0
}

حلقة while

JAVA
while (الشرط) {
    // يتم تنفيذ هذا الكود طالما الشرط صحيح
}

مثال: طباعة الأرقام حتى 10

JAVA
int i = 1;
while (i <= 10) {
    System.out.println(i);
    i++;
}
▶ جرّب الكود

مثال: التحقق من المدخلات

JAVA
Scanner scanner = new Scanner(System.in);
int number;

System.out.print("أدخل رقماً موجباً: ");
number = scanner.nextInt();

while (number <= 0) {
    System.out.print("رقماً موجباً من فضلك: ");
    number = scanner.nextInt();
}

System.out.println("شكراً! أدخلت: " + number);
▶ جرّب الكود

حلقة do-while

JAVA
do {
    // يتم تنفيذ هذا الكود مرة واحدة على الأقل
} while (الشرط);

مثال: قائمة طعام

JAVA
Scanner scanner = new Scanner(System.in);
String choice;

do {
    System.out.println("\n--- قائمة الطعام ---");
    System.out.println("1. برجر");
    System.out.println("2. بيتزا");
    System.out.println("3. سلطة");
    System.out.println("0. خروج");
    System.out.print("اختر: ");
    choice = scanner.nextLine();

    switch (choice) {
        case "1": System.out.println("اخترت برجر"); break;
        case "2": System.out.println("اخترت بيتزا"); break;
        case "3": System.out.println("اخترت سلطة"); break;
        case "0": System.out.println("شكراً!"); break;
        default: System.out.println("خيار غير صالح");
    }
} while (!choice.equals("0"));
▶ جرّب الكود

الفرق بين while و do-while

الحلقة الشرط التنفيذ
while يتحقق أولاً قد لا يتم التنفيذ أبدًا
do-while يتحقق بعد التنفيذ يتم التنفيذ مرة واحدة على الأقل
JAVA
// while — لن يتم التنفيذ
int x = 10;
while (x < 5) {
    System.out.println("لن يتم طباعة هذا");
}

// do-while — يتم التنفيذ مرة واحدة
int y = 10;
do {
    System.out.println("يتم طباعة هذا مرة واحدة");
} while (y < 5);

break و continue

break — إيقاف الحلقة

JAVA
for (int i = 1; i <= 10; i++) {
    if (i == 5) {
        break;  // إيقاف الحلقة عند i = 5
    }
    System.out.println(i);  // 1, 2, 3, 4
}

continue — تخطي التكرار

JAVA
for (int i = 1; i <= 10; i++) {
    if (i % 2 == 0) {
        continue;  // تخطي الأرقام الزوجية
    }
    System.out.println(i);  // 1, 3, 5, 7, 9
}

الحلقات المتداخلة

JAVA
// جدول الضرب
for (int i = 1; i <= 9; i++) {
    for (int j = 1; j <= i; j++) {
        System.out.printf("%d × %d = %d\t", j, i, i * j);
    }
    System.out.println();
}

❓ أسئلة شائعة

س ما الفرق بين for و while؟
ج for مناسب عندما تعرف عدد التكرارات. while مناسب عندما لا تعرف عدد التكرارات.
س هل يمكن وضع break في while؟
ج نعم، break يعمل في جميع أنواع الحلقات: for، while، do-while.
س ما هو الحلقة اللانهائية؟
ج حلقة لا تنتهي أبدًا، مثل while (true). يجب استخدام break للخروج منها.

📖 ملخص

📝 تمارين

  1. جدول الضرب: اطبع جدول الضرب من 1 إلى 10
  2. المجموع: احسب مجموع الأرقام من 1 إلى N (يُدخله المستخدم)
  3. نجمة: اطبع نجمة مثلثة:
TEXT
*
**
***
****
*

الدرس التالي

في الدرس التالي، سنتعلم المصفوفات — تخزين مجموعات من البيانات.

100%