Menu
CoddyTech

לולאת while

חלק מהיחידה יסודות במסלול ה-PHP של Coddy. שיעור 48 מתוך 71.

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

לולאת while בודקת את התנאי שלה לפני כל איטרציה. אם התנאי נכון, הקוד שבתוכה רץ. כך זה נמשך עד שהתנאי נעשה שגוי.

<?php
$count = 1;

while ($count <= 3) {
    echo "Count: $count\n";
    $count++;
}
?>

הפלט הוא:

Count: 1
Count: 2
Count: 3

הלולאה מתחילה בבדיקה אם $count <= 3. מכיוון שהתנאי מתקיים, הקוד רץ ומגדיל את $count. כאשר $count מגיע ל־4, התנאי נכשל והלולאה נעצרת.

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

<?php
$total = 0;
$num = 1;

while ($total < 10) {
    $total += $num;
    $num++;
}

echo $total;
?>

כך ממשיכים לחבר מספרים עד שהסכום מגיע ל־10 או עובר אותו, ואז הפונקציה מציגה את הערך הסופי.

challenge icon

אתגר

קל

השורות שמעל הקוד שלך כבר קוראות את הסכום המבוקש אל $target ומגדירות את $total ואת $num ל־0, לכן אל תקרא את הקלט שוב.

השתמש בלולאת while כדי להוסיף מספרים עוקבים החל מ־1 (1, 2, 3, 4, ...) עד שהסכום יגיע לסכום המבוקש או יעלה עליו.

השורות שמתחת לקוד שלך מדפיסות את הסכום הסופי ואת המספר האחרון שנוסף.

דוגמה 1:

אם הקלט הוא 10, הפלט צריך להיות:

10
4

(1 + 2 + 3 + 4 = 10, וזה מגיע לסכום המבוקש)

דוגמה 2:

אם הקלט הוא 15, הפלט צריך להיות:

15
5

(1 + 2 + 3 + 4 + 5 = 15)

דוגמה 3:

אם הקלט הוא 7, הפלט צריך להיות:

10
4

(1 + 2 + 3 + 4 = 10, וזה עולה על 7)

נסו בעצמכם

// TODO: כתבו כאן את הקוד שלכם
// השתמשו בלולאת while כדי לחבר מספרים עוקבים (1, 2, 3, ...)
// עד שהסכום יגיע לערך היעד או יעלה עליו


quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר PHP אונליין