0Pricing
C# Academy · บทเรียน

ตัวดำเนินการและนิพจน์: เลขคณิต การเปรียบเทียบ ตรรกะ

ใช้งานตัวดำเนินการเลขคณิต (+, -, *, /, %), การเปรียบเทียบ (==, !=, , =) และตัวดำเนินการตรรกะ (&&, ||, !) ทำความเข้าใจลำดับความสำคัญและการประเมินแบบลัดวงจร

ตัวดำเนินการและนิพจน์: เลขคณิต การเปรียบเทียบ ตรรกะ เป็นบทเรียน C# Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน C# Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส C# Academy มีบทเรียนทั้งหมด 3 บทเรียน

แผนผังตัวดำเนินการ

เป้าหมาย: ใช้ตัวดำเนินการทางคณิตศาสตร์ การเปรียบเทียบ และตรรกะเพื่อสร้างนิพจน์ที่ชัดเจน

  • คำนวณด้วย + - * / %
  • เปรียบเทียบค่า
  • รวมการตรวจสอบด้วย && และ ||

พื้นฐานเลขคณิต

เลขคณิต: การหารด้วย / เมื่อใช้ชนิด int จะตัดส่วนทศนิยมทิ้ง หากต้องการผลลัพธ์เป็นเศษส่วนให้ใช้ double

using System;

public class Program
{
  public static void Main(string[] args)
  {
    int a = 9;
    int b = 4;
    Console.WriteLine("a + b = " + (a + b));
    Console.WriteLine("a - b = " + (a - b));
    Console.WriteLine("a * b = " + (a * b));
    Console.WriteLine("a / b = " + (a / b)); // integer division
    Console.WriteLine("a % b = " + (a % b)); // remainder
  }
}

พื้นฐานการเปรียบเทียบ

ตัวดำเนินการ เปรียบเทียบ ให้ผลลัพธ์เป็น bool ซึ่งสามารถนำไปรวมกับตัวดำเนินการทางตรรกะได้

using System;

public class Program
{
  public static void Main(string[] args)
  {
    int x = 5;
    int y = 7;
    Console.WriteLine("x == y: " + (x == y));
    Console.WriteLine("x != y: " + (x != y));
    Console.WriteLine("x < y:  " + (x < y));
    Console.WriteLine("x <= y: " + (x <= y));
    Console.WriteLine("x > y:  " + (x > y));
    Console.WriteLine("x >= y: " + (x >= y));
  }
}

ตัวดำเนินการทางตรรกะ

การลัดวงจร: && จะหยุดเมื่อด้านซ้ายเป็น false ส่วน || จะหยุดเมื่อด้านซ้ายเป็น true มีประโยชน์ในการหลีกเลี่ยงงานที่ไม่จำเป็น

using System;

public class Program
{
  static bool ExpensiveCheck()
  {
    Console.WriteLine("ExpensiveCheck ran");
    return true;
  }

  public static void Main(string[] args)
  {
    bool ok = false;
    // && short-circuits when the left is false
    if (ok && ExpensiveCheck())
    {
      Console.WriteLine("Both true");
    }
    else
    {
      Console.WriteLine("Left was false, skipped right");
    }

    bool isAdmin = true;
    bool hasTicket = false;

    // || short-circuits when the left is true
    if (isAdmin || hasTicket)
    {
      Console.WriteLine("Allowed");
    }

    // Negation
    Console.WriteLine("!hasTicket = " + (!hasTicket));
  }
}

ลำดับความสำคัญและ ()

ลำดับความสำคัญมีผลต่อผลลัพธ์ ให้ใส่วงเล็บเพื่อทำให้เจตนาชัดเจนและหลีกเลี่ยงข้อผิดพลาด

using System;

public class Program
{
  public static void Main(string[] args)
  {
    int n = 10;
    int m = 3;
    bool r1 = n - m * 2 == 4;        // * before -
    bool r2 = (n - m) * 2 == 14;     // grouped
    Console.WriteLine("r1 = " + r1);
    Console.WriteLine("r2 = " + r2);

    // Logical precedence: && before ||, but use () for clarity
    bool a = true, b = false, c = true;
    bool r3 = a || b && c;           // b&&c first → true
    bool r4 = (a || b) && c;         // grouped → true
    Console.WriteLine("r3 = " + r3);
    Console.WriteLine("r4 = " + r4);
  }
}

ข้อควรระวัง

หลีกเลี่ยงผลลัพธ์ที่ไม่คาดคิด: แปลงเป็น double เมื่อ ต้องการผลลัพธ์เป็นเศษส่วน และอาศัยการลัดวงจรเพื่อข้ามการเรียกใช้ที่ใช้ทรัพยากรมาก

using System;

public class Program
{
  static int Counter = 0;

  static int Next()
  {
    Counter = Counter + 1;
    return Counter;
  }

  public static void Main(string[] args)
  {
    // Integer division pitfall
    int a = 1, b = 2;
    Console.WriteLine("1/2 int = " + (a / b)); // 0
    Console.WriteLine("1/2 double = " + (a / 2.0)); // 0.5

    // Side effects: function called only if needed
    bool cond = false;
    if (cond && Next() > 0)
    {
      Console.WriteLine("Will not run");
    }
    Console.WriteLine("Counter = " + Counter); // 0 because Next() skipped
  }
}

พฤติกรรมการลัดวงจร

ตรวจสอบความเข้าใจอย่างรวดเร็ว: ข้อความใดเกี่ยวกับ && และ || ที่ถูกต้อง

ทบทวน

ทบทวน: ใช้เลขคณิตสำหรับการคำนวณ ใช้การเปรียบเทียบสำหรับการตัดสินใจ และใช้ตัวดำเนินการทางตรรกะเพื่อรวมการตรวจสอบ ควรใส่วงเล็บเพื่อความชัดเจน และใช้การลัดวงจรอย่างเหมาะสม

คำถามที่พบบ่อย

บทเรียน “ตัวดำเนินการและนิพจน์: เลขคณิต การเปรียบเทียบ ตรรกะ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ตัวดำเนินการและนิพจน์: เลขคณิต การเปรียบเทียบ ตรรกะ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส C# Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส C# Academy มีบทเรียนทั้งหมด 3 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ตัวดำเนินการและนิพจน์: เลขคณิต การเปรียบเทียบ ตรรกะ”

ใช้งานตัวดำเนินการเลขคณิต (+, -, *, /, %), การเปรียบเทียบ (==, !=, , =) และตัวดำเนินการตรรกะ (&&, ||, !) ทำความเข้าใจลำดับความสำคัญและการประเมินแบบลัดวงจร คุณปฏิบัติ C# Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน C# Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน C# Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 3 บทเรียน

บทเรียน “ตัวดำเนินการและนิพจน์: เลขคณิต การเปรียบเทียบ ตรรกะ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน C# Academy นี้ได้ไหม

ได้ บทเรียน C# Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ค่าเทียบกับการอ้างอิง ลิเทอรัล การอนุมานด้วย var และ const/readonly
  2. ตัวดำเนินการและนิพจน์: เลขคณิต การเปรียบเทียบ ตรรกะ
  3. การใช้งานส่วนต่อท้ายจริง การแปลงแบบแคสต์เทียบกับการแปลงค่า และการสร้างอ็อบเจกต์ใน C# 6
← กลับไปที่ C# Academy