Menu
Coddy logo textTech

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;
}
...
challenge icon

אתגר

מתחילים

ניתן לך קוד שמקבל כקלט מספר שמציין את מהירות הרוח ושומר אותו במשתנה בשם 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; 
}
quiz iconבחנו את עצמכם

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

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

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