If - Else
חלק מהיחידה יסודות במסלול ה-C++ של Coddy. שיעור 28 מתוך 74.
if מאפשר לנו להריץ קוד מסוים אם תנאי מתקיים, אבל מה אם נרצה להריץ משהו אחר אם התנאי לא מתקיים?
לשם כך יש לנו את פקודת else:
int age = 15;
std::string status = "None";
if (age >= 18) {
status = "Adult";
} else {
status = "Young";
}בדוגמה שלמעלה, age קטן מ־18, ולכן התוכנית נכנסת לקוד של else ו־status יכיל את "Young".
אפשר אפילו להפוך את זה למעמיק יותר באמצעות המשפט else if:
int age = 68;
std::string status = "None";
if (age < 18) {
status = "Young";
} else if (age >= 18 && age <= 65) {
status = "Adult";
} else {
status = "Old";
}כאן נבדק אם age קטן מ־18. אם לא, ממשיכים לתנאי הבא ובודקים אם age נמצא בין 18 ל־65. אם גם התנאי הזה לא מתקיים, הערך של status יוגדר ל־"Old".
אפשר להוסיף כמה משפטי else if שנרצה:
if (condition1) {
code;
} else if (condition2) {
code;
} else if (condition3) {
code;
}
...אתגר
מתחיליםניתן לך קוד שמקבל כקלט מספר שמציין את מהירות הרוח ושומר אותו במשתנה בשם wind.
הערה: בשיעורים הבאים נלמד כיצד לקבל קלט מהמשתמש, כרגע פשוט אל תשנה את השורה הראשונה.
המשימה שלך היא לאתחל את המשתנה status בהתאם לתנאים:
"Calm"אםwindקטן מ-8,"Breeze"אםwindנמצא בין8ל-31(כולל 8 ו-31)."Gale"אםwindנמצא בין32ל-63(כולל 32 ו-63)"Storm"אחרת
בדוק את מקרי הבדיקה כדי לראות את כל הקלטים ואת הפלטים הצפויים
נסו בעצמכם
#include <iostream>
int main() {
int wind;
std::cin >> wind; // אין לשנות את השורה הזו
std::string status = "unset";
// כתבו את הקוד שלכם למטה
// אין לשנות את השורה שלמטה
std::cout << "status = " << status;
return 0;
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוהגדלה/הקטנההגדלה/הקטנה לאחר הפעולהקיצורים אריתמטייםאופרטורי השוואההשוואת מחרוזותתרגלו בעצמכם: קומפיילר C++ אונליין