פרק 5 - לולאות while


ביצוע פעולות חוזרות באמצעות לולאות while

הערה: בפרק זה נלמד כיצד להשתמש בלולאות מסוג while, שמבצעות פעולה כל עוד תנאי מסוים מתקיים.

סדר הוראה: יש מורים המעדיפים ללמד לולאת while לפני לולאת for. עשו כפי שמרגיש לכם נכון

מבנה לולאת while

לולאת while משמשת לביצוע פעולה מספר לא מוגדר של פעמים, כל עוד התנאי מתקיים.

המבנה הכללי:

1
2
3
4
5
6
int counter = 0;
while (counter < 5)
{
    Console.WriteLine("The number is: " + counter);
    counter++;
}

דוגמת פלט:

The number is: 0
The number is: 1
The number is: 2
The number is: 3
The number is: 4

לולאה לקבלת קלט מהמשתמש

ניתן להשתמש בלולאת while לקבלת קלט מהמשתמש עד לקבלת ערך תקין:

1
2
3
4
5
6
7
8
9
10
11
int number;
Console.Write("הזן מספר חיובי: ");
number = int.Parse(Console.ReadLine());

while (number <= 0)
{
    Console.WriteLine("Invalid number, try again.");
    Console.Write("הזן מספר חיובי: ");
    number = int.Parse(Console.ReadLine());
}
Console.WriteLine("The number entered is: " + number);

לולאות while ושימוש ב-break

אפשר לעצור את הלולאה בכל שלב בעזרת break:

1
2
3
4
5
6
7
8
9
10
11
int count = 0;
while (true)
{
    Console.WriteLine(count);
    count++;

    if (count == 5)
    {
        break; // עצירת הלולאה
    }
}

פלט הלולאה:

0
1
2
3
4

דגלים (flags) בלולאות while

ניתן להשתמש במשתני דגל כדי לשלוט בהפעלת לולאות:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
bool continueLoop = true;
int number;

while (continueLoop)
{
    Console.Write("Enter a number (0 to exit): ");
    number = int.Parse(Console.ReadLine());

    if (number == 0)
    {
        continueLoop = false;
    }
    else
    {
        Console.WriteLine("The number entered is: " + number);
    }
}

טבלת מעקב ללולאת while

שורת קוד count פלט
התחלה 0 0
איטרציה 1 1 1
איטרציה 2 2 2
איטרציה 3 3 3
איטרציה 4 4 4

אזהרה: ודאו תמיד שלולאת while מכילה תנאי שיגרום להפסקת הלולאה, כדי למנוע לולאה אינסופית.