הוראות if
הוצג| English | משמעות |
|---|---|
| if statement/ɪf ˈsteɪtmənt/ | הצהרת if |
הרצת קוד בתנאי
- פקודת if רצית חוסר קוד רק כאשר התנאי שלה הוא
true. if (score >= 60) { System.out.println("Pass"); }- אם התנאי הוא
false, הבלוק ידלג לחלוטין. - זהו בחירה — התוכנה בוחרת האם לרצות את החוסר.
הוספת else
- סעיף
elseרצית קוד חלופי כאשר התנאי הואfalse. if (score >= 60) { print("Pass"); } else { print("Fail"); }- בדיוק אחד משני הענפים רץ — לעולם לא שניהם, ולעולם לא אף אחד מהם.
elseהוא אופציונלי;ifריק פשוט מדלג על החוסם שלו כאשר התנאי שגוי.
סוגרי עקיפה מקבילים את החוסר
- סוגרי עקיפה
{ }מקבילים את הפקודות השייכות ל-ifאו ל-else. - ללא סוגרי עקיפה, רק הפקודה הבאה היחידה נשלטת על ידי ה-
if. - השתמשו תמיד בסוגרי עקיפה, גם עבור שורה אחת — כך תמנעו שגיאה נפוצה.
- ערכו את החוסר בהזזה (indent) כך שהמבנה יהיה נראה לעין.
מעקב אחר הענף
- כדי לעקוב אחר
if-else, יש להעריך את התנאי, ולאחר מכן לרצות את ענף ההתאמה. - עם
score = 75:75 >= 60הואtrue→ ריצת בלוק הif→ הדפסת "Pass". - עם
score = 40:40 >= 60הואfalse→ ריצת בלוק הelse→ הדפסת "Fail". - רק הקוד הנמצא בענף שנבחר יוצאה לפועל.
ללא סוגריים, if שולט רק בONE statement היחידה הממוקמת מיד אחריו. כלומר if (x > 0) a(); b(); תמיד תרוץ b() — הרווחים (indentation) מטעים. יש לעטוף תמיד את הבלוק ב{ }. בנוסף, בif-else, מדויק ענף אחד יוצא לפועל; לעולם לא תיכנס לשני הענפים יחד, בניגוד לסטטומנטים if נפרדים.
ציון באמצעות if-else:
if (score >= 90) { grade = "A"; } else { grade = "B"; }score = 95→ תנאיtrue→gradeהוא"A".score = 80→ תנאיfalse→gradeהוא"B".
ביטוי if מפעיל בלוק רק כאשר התנאי שלו הוא true; else אופציונלי מפעיל קוד חלופי כאשר הוא false — בדיוק ערוץ אחד מבוצע. השתמש בסוגרי מסוג { } לקבץ כל בלוק (ללא סוגריים, רק ההצהרה הבאה היחידה מופעלת). מעקב על ידי ביצוע התנאי, ואז הפעלת הערוץ המתאים.
איזה ветка תופעל?
בלוק התנאי הראשון שנמצא נכון יופעל; שאר הבלוקים ידולגו.
בהוראת if-else, כמה מתוך שני הבלוקים יופעלו?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
בדיו בלוק אחד יופעל בהתאם לתנאי.
אם (score >= 60) הדפס Pass, אחרת הדפס Fail. אם score = 40, מה יודפס?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
40 >= 60 הוא שגוי → בלוק else יופעל → יודפס Fail.
ללא סוגריים, הוראת if שולטת רק בהמשך היחיד הבא.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
סוגריים מקבוצים את הבלוק; ללאם רק statement אחד הוא תנאי.
if רישה (ללא else) פשוט דולגת על בלוק שלה כאשר התנאי שגוי.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
בלי אחרת, תנאי שגוי פשוט אינו עושה כלום.
הבלוק שמופעל כאשר תנאי if הוא שגוי הוא בלוק ה___ (מילה אחת).
Difficulty 1/5 · 100 coins + a small bonus on first completion today
else מספק את הענף החלופי.