Menu
Coddy logo textTech

אופרטור תנאי טרנרי

חלק מהיחידה יסודות במסלול ה-C של Coddy. שיעור 29 מתוך 63.

האופרטור התנאי הטרנרי הוא דרך מקוצרת לכתוב משפט if-else בשורה אחת.

התחביר הוא:

condition ? value_if_true : value_if_false;

בואו נבחן דוגמה. ראשית, הנה פקודת if-else מסורתית:

int max;
if (a > b) {
    max = a;
} else {
    max = b;
}

עכשיו, נכתוב אותו מחדש באמצעות האופרטור הטרנרי:

int max = (a > b) ? a : b;

בדוגמה הזו:

  • a > b הוא התנאי
  • אם התנאי נכון, מוחזר a
  • אם התנאי שגוי, מוחזר b

אפשר גם לקנן את האופרטור הטרנרי, אבל הדבר עלול להקשות על קריאת הקוד:

int x = (a > b) ? ((a > c) ? a : c) : ((b > c) ? b : c);
challenge icon

אתגר

קל

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

  1. לקבל מהמשתמש קלט של מספר שלם.
  2. להשתמש באופרטור התנאי כדי לקבוע אם המספר חיובי, שלילי או אפס.
  3. להדפיס את התוצאה בפורמט: "The number is [positive/negative/zero]".

נסו בעצמכם

#include <stdio.h>

int main() {
    int number;
    scanf("%d", &number);
    
    // כתבו את הקוד שלכם למטה
    // החליפו את הטקסט הזמני בביטוי תנאי
    char* result = "zero";
    
    printf("The number is %s\n", result);
    return 0;
}
quiz iconבחנו את עצמכם

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

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

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