שיעורי מודול (2/2)
בקרת זרימה
כדי להפוך את התוכניות שלנו לדינמיות ומסוגלות לקבל החלטות, אנו משתמשים במבני זרימת בקרה: הצהרות מותנות ולולאות.
תנאים: if, else if ו-else
ההצהרה if מבצעת גוש קוד רק אם תנאי בוליאני ספציפי נכון.
int temperature = 25;
if (temperature > 30) {
System.out.println("Fa molto caldo!");
} else if (temperature >= 20) {
System.out.println("Il clima è piacevole.");
} else {
System.out.println("Fa freddo.");
}מפעילים לוגיים
אנו יכולים לשלב מספר תנאים באמצעות אופרטורים לוגיים:
&&(AND): מחזירהtrueאם שני התנאים מתקיימים.||(OR): מחזירהtrueאם לפחות אחד מהתנאים מתקיים.!(לא): הופך את הערך הלוגי של התנאי.
boolean hasLicense = true;
boolean hasCar = false;
if (hasLicense && hasCar) {
System.out.println("Puoi guidare.");
}לולאות: while ו-for
לולאות מאפשרות לנו לבצע שוב ושוב גוש קוד.
לולאת while
מבצע את הקוד כל עוד התנאי שצוין נשאר true.
int count = 1;
while (count <= 3) {
System.out.println("Conteggio: " + count);
count++; // Increment count by 1
}לולאת for
אידיאלי כאשר אנו יודעים מראש את מספר האיטרציות לביצוע. התחביר דורש אתחול, תנאי סיום וביטוי הגדלה.
for (int i = 0; i < 5; i++) {
System.out.println("Iteration: " + i);
}תנאים מתקדמים: ה-switch
כאשר אנו צריכים להשוות משתנה בודד מול ערכים קבועים מרובים, ההצהרה switch הופכת את הקוד להרבה יותר נקי ממספר בלוקים if-else משורשרים.
int dayOfWeek = 3;
switch (dayOfWeek) {
case 1:
System.out.println("Monday");
break;
case 2:
System.out.println("Tuesday");
break;
case 3:
System.out.println("Wednesday");
break;
default:
System.out.println("Other day");
}בקרת לולאה: break וcontinue
אנו יכולים לשנות את הזרימה הרגילה של לולאה באמצעות שני הצהרות מיוחדות:
break: מפסיק מיד את הביצוע של הלולאה הפנימית ביותר, יציאה ממנה לחלוטין.continue: מדלג על שאר הקוד באיטרציה הנוכחית וקופץ ישירות להערכת התנאי עבור האיטרציה הבאה (או ביטוי ההגדלה בלולאהfor).
for (int i = 1; i <= 5; i++) {
if (i == 3) {
continue; // Skips printing for the number 3
}
System.out.println(i);
}נסה זאת בעצמך
השלם את הקוד על ידי בדיקת משתנה הציון: אם הוא גדול או שווה ל-60, הדפס Pass, אחרת הדפס נכשל.
הצג רמז
השתמש ב-'if (score >= 60) { ... } else { ... }` והדפיס את המחרוזת המדויקת המבוקשת.
הפתרון זמין לאחר 3 ניסיונות
כתוב לולאת for כדי להדפיס את המספרים מ-1 עד 5 (כולל) על שורות נפרדות.
הצג רמז
השתמש באתחול `int i = 1`, תנאי `i <= 5` והגדל `i++` בתוך הכותרת של לולאת `for`.
הפתרון זמין לאחר 3 ניסיונות
השלם את הקוד באמצעות לולאת while כדי להדפיס את המספרים מ-3 עד 1 (כולל) בשורות נפרדות.
הצג רמז
כתוב `while (count >= 1) { ... }` הדפסת `count` ולאחר מכן הפחתה באמצעות `count--;`.
הפתרון זמין לאחר 3 ניסיונות