לולאת do..while

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


 

לולאת do...while

 
 
מאת: ארז קלר

 להורדת דוגמאות הקוד

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

לולאת do … while מורכבת גם היא משני חלקים, אולם הפעם בסדר הפוך:
גוף הלולאה קודם לביטוי הבוליאני הקובע האם היא תמשיך להתבצע.

תחביר:
do
{
       Statement 1;
       Statement 2;
        …
       Statement N;
}
while (Boolean 

כמו לולאת while, גם לולאת do…while תבוצע כל עוד ערכו של הביטוי הבוליאני הוא true, אולם בניגוד ללולאת while, לולאה זו מבטיחה שלפחות איטראציה אחת תבוצע וזאת משום שהתנאי נבדק בסופה.
לדוגמה (DoWhile01):

 1  : class Program 
 2  : { 
 3  :     static void Main(string[] args) 
 4  :     { 
 5  :         int num = 0; 
 6  :         int sum = 0; 
 7  :         int counter = -1; 
 8  :         do 
 9  :         { 
 10 :             sum += num; 
 11 :             counter++; 
 12 :             num = int.Parse(Console.ReadLine()); 
 13 :         } 
 14 :         while (num >= 0); 
 15 :         Console.WriteLine("Average = {0}", sum / counter); 
 16 :     } 
 17 : } 
בשורה 9 מוגדרת הלולאה do...while, c, בכניסה ללולאה אין בדיקה של תנאי דבר שמבטיח שהלולאה תבצע לפחות איטראציה אחת.
התנאי נבדק ביציאה מהלולאה, במידה וערכו של num גדול או שווה ל-0 הלולאה תבצע איטראציה נוספת.

בסיום כל איטראציה ולפני ביצוע האיטראציה הבאה נבדק התנאי פעם נוספת.
הלולאה תתבצע כל עוד num יהיה גדול או שווה ל-0.
הערה - חייבים להתייחס למשתנה שמרכיב את התנאי בתוך הלולאה, אחרת התנאי לעולם יתקיים וניכנס ללולאה אין סופית.

פלט:
פלט התוכנית דוגמה DoWhileSample01
 

 
למאמר הבא - דוגמה - משחק ניחוש מספר
חזרה לרשימת המאמרים



כל הזכויות שמורות למחבר ©