ตัวดำเนินการและคณิตศาสตร์
ตัวดำเนินการรวมค่าเป็นนิพจน์ C# ทำตามกฎคณิตศาสตร์ทั่วไป แต่มีเรื่องที่ทำให้มือใหม่แปลกใจ คือการหารจำนวนเต็มด้วยจำนวนเต็มจะตัดส่วนทศนิยมทิ้ง
ทำงานอย่างไร
ใช้ตัวดำเนินการเลขคณิต การกำหนดค่า การเปรียบเทียบ และตรรกะใน C# รวมถึงคลาส Math
17 / 5 ได้ 3 เพราะตัวถูกดำเนินการทั้งสองเป็น int ส่วน 17 / 5.0 เก็บทศนิยมไว้ การเปรียบเทียบและ && / || ให้ค่า bool และ Math มี Pow, Round, Sqrt และอื่น ๆ
ตัวอย่าง C# ที่รันได้
Program.cs
using System;
class Program
{
static void Main()
{
int a = 17, b = 5;
Console.WriteLine($"a + b = {a + b}");
Console.WriteLine($"a - b = {a - b}");
Console.WriteLine($"a * b = {a * b}");
Console.WriteLine($"a / b = {a / b}"); // int / int drops the fraction
Console.WriteLine($"a % b = {a % b}"); // remainder
Console.WriteLine($"a / 5.0 = {a / 5.0}"); // a double operand keeps it
int total = 10;
total += 5;
total *= 2;
Console.WriteLine($"total = {total}");
int count = 0;
count++;
Console.WriteLine($"count = {count}");
// Comparison and logical operators produce bool values.
Console.WriteLine($"a > b: {a > b}, a == 17: {a == 17}");
Console.WriteLine($"a > 10 && b > 10: {a > 10 && b > 10}");
Console.WriteLine($"a > 10 || b > 10: {a > 10 || b > 10}");
// Math holds common functions.
Console.WriteLine($"Math.Pow(2, 10) = {Math.Pow(2, 10)}");
Console.WriteLine($"Math.Round(3.14159, 2) = {Math.Round(3.14159, 2)}");
}
}
a + b = 22
a - b = 12
a * b = 85
a / b = 3
a % b = 2
a / 5.0 = 3.4
total = 30
count = 1
a > b: True, a == 17: True
a > 10 && b > 10: False
a > 10 || b > 10: True
Math.Pow(2, 10) = 1024
Math.Round(3.14159, 2) = 3.14ฝึกกับดีบักเกอร์
ตั้ง breakpoint ที่การกำหนดค่าหรือเงื่อนไขสำคัญ กด Debug แล้วดูค่าตัวแปรภายในก่อนไปยังบรรทัดถัดไป
ฝึกด้วยโจทย์
ใช้สิ่งที่เรียนในบทนี้แก้ปัญหาจริง ทุกโจทย์รันในเบราว์เซอร์ พร้อมการทดสอบทันทีและรีวิวจาก AI
- Celsius to Fahrenheit Convert a temperature from Celsius to Fahrenheit. ง่าย
- Simple Interest Find the total amount after simple interest. ง่าย