Menu
Coddy logo textTech

קדימות אופרטורים

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-C# של Coddy. שיעור 38 מתוך 66.

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

עיינו בדוגמה הזו:

int result = 5 + 3 * 2;

מה הערך של result? הוא 11, לא 16, כי לכפל יש קדימות גבוהה יותר מלחיבור.

הנה סדר קדימויות מפושט (מהגבוה לנמוך):

  1. סוגריים ()
  2. כפל/חילוק * / %
  3. חיבור/חיסור + -
  1. אופרטורי השוואה < > <= >=
  2. אופרטורי שוויון == !=
  1. וגי AND לוגי &&
  2. או לוגי ||
  3. אופרטורי השמה = += -= וכו׳

בואו נראה איך זה חל:

bool result = 5 > 3 && 10 < 20 || 7 == 8;

תחילה, ההשוואות מוערכות: 5 > 3 הוא true, 10 < 20 הוא true, ו־7 == 8 הוא false.
לאחר מכן, AND לוגי: true && true הוא true.
לבסוף, OR לוגי: true || false הוא true.

לכן התוצאה היא true.

השתמש בסוגריים כדי להפוך את הקוד שלך לברור יותר:

bool result = (5 > 3 && 10 < 20) || (7 == 8);
challenge icon

אתגר

קל

צור מתודה בשם EvaluateExpression שמקבלת שלושה מספרים שלמים (a, b, c) ומחזירה ערך בוליאני.

המתודה שלך צריכה להחזיר את התוצאה של הביטוי הזה:
a > b || a == c && b < c

לאחר מכן, צור מתודה נוספת בשם EvaluateWithParentheses שמחשבת את הערך של:
(a > b || a == c) && b < c

התוכנית שלך צריכה לקרוא שלושה מספרים שלמים מהמסוף ולהדפיס את התוצאות של שתי ההערכות בשורות נפרדות.

נסו בעצמכם

using System;

class Program
{
    public static bool EvaluateExpression(int a, int b, int c)
    {
        // כתבו כאן את הקוד שלכם
    }
    
    public static bool EvaluateWithParentheses(int a, int b, int c)
    {
        // כתבו כאן את הקוד שלכם
    }
    
    static void Main(string[] args)
    {
        Console.WriteLine("Enter three integers:");
        int a = int.Parse(Console.ReadLine());
        int b = int.Parse(Console.ReadLine());
        int c = int.Parse(Console.ReadLine());
        
        // קראו למתודות שלכם והדפיסו את התוצאות
    }
}
quiz iconבחנו את עצמכם

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

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

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