מדריך C# – לולאת while

‏ • Sela

בחלק הקודם למדנו על שימוש בלולאת for. בחלק זה נלמד כיצד להשתמש בלולאת while.

לולאת while

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

ללולאת while יש את המבנה הבא:

while (condition)
{
    statements
}

במבנה הזה הביטוי condition הוא תנאי שהלולאה בודקת לפני ביצוע גוף הלולאה. גוף הלולאה מתבצע רק אם הביטוי condition מחזיר ערך true.

הביטוי statements הוא גוף הלולאה.

לדוגמא, התוכנית הבאה מבצעת הדפסה של המחרוזת "Using while loop" 3 פעמים:

int i = 0;
while
(i < 3)
{
++i;
Console.WriteLine("Using while loop");
}

נעיר כי תוכנית זו יכלה גם להשתמש בלולאת for כפי שראינו בחלק הקודם.

להלן דוגמא נוספת, בה אנו קולטים שמות מהמשתמש ומדפיסים הודעת "Welcome" לכל אחד מהשמות, עד אשר המשתמש מכניס שם ריק "":

Console.WriteLine("Enter name: ");
string name = Console.ReadLine();
while (name != ""
)
{
   
Console.WriteLine("Welcome " + name + "!"
);
    name =
Console.ReadLine();
}

שימו לב שבדוגמא זו לא ידוע מראש כמה פעמים גוף הלולאה יתבצע, מאחר וזה תלוי בקלט של המשתמש.

while או for?

באופן כללי, כל לולאת for ניתן לכתוב גם כלולאת while ולהיפך, שכן קטעי הקוד הבאים שקולים:

לולאת for כללית:

for (before-statement; condition; after-statement)
{
    loop-body
}

לולאת while שקולה:

before-statement
while (condition)
{
    loop-body
}
after-statement

בדרך כלל נבחר להשתמש בלולאת for כאשר ידוע מספר הפעמים שגוף הלולאה יתבצע ואילו נשתמש בלולאת while כאשר מספר הפעמים לא ידוע מראש ותלוי באיזשהו תנאי מורכב יותר.

תגיות: , , ,

arikp

אריק פוזננסקי הוא יועץ בכיר ומרצה בסלע. הוא השלים שני תארי B.Sc. במתמטיקה ומדעי המחשב בהצטיינות יתרה בטכניון. לאריק ידע נרחב בטכנולוגיות מיקרוסופט, כולל .NET עם C#, WPF, Silverlight, WinForms, Interop, COM/ATL, C++ Win32 ו reverse engineering.

תגובות בפייסבוק