โอเค 😎 เรามาเรียนเรื่อง Math
Class ใน C# แบบครบเครื่อง ตั้งแต่พื้นฐานจนถึงฟังก์ชันที่ใช้บ่อย
1️⃣ Math
Class คืออะไร?
-
อยู่ใน System Namespace
-
เป็น static class → เรียกใช้ได้เลยโดยไม่ต้องสร้าง object
-
มี ฟังก์ชันทางคณิตศาสตร์ มากมาย เช่น √, sin, cos, max, min, round, random
using System;
2️⃣ ฟังก์ชันพื้นฐาน
(1) ค่าตัวเลขพื้นฐาน
Console.WriteLine(Math.PI); // 3.14159265358979
Console.WriteLine(Math.E); // 2.71828182845905
(2) ค่าตัวเลข Absolue
Console.WriteLine(Math.Abs(-10)); // 10
(3) Max / Min
Console.WriteLine(Math.Max(5, 10)); // 10
Console.WriteLine(Math.Min(5, 10)); // 5
(4) การปัดเศษ
Console.WriteLine(Math.Ceiling(3.2)); // 4
Console.WriteLine(Math.Floor(3.8)); // 3
Console.WriteLine(Math.Round(3.5)); // 4
Console.WriteLine(Math.Round(3.45, 1));// 3.5
(5) Square Root / Power
Console.WriteLine(Math.Sqrt(16)); // 4
Console.WriteLine(Math.Pow(2, 3)); // 8 (2^3)
3️⃣ ฟังก์ชันตรีโกณมิติ
Console.WriteLine(Math.Sin(Math.PI / 2)); // 1
Console.WriteLine(Math.Cos(0)); // 1
Console.WriteLine(Math.Tan(Math.PI / 4)); // 1
-
หมายเหตุ: ใช้ Radians ไม่ใช่ Degrees
-
ถ้าต้องการ Degrees → แปลง:
radians = degrees * (Math.PI / 180)
4️⃣ ฟังก์ชันทางลอการิทึม / Exponential
Console.WriteLine(Math.Exp(1)); // e^1 = 2.718281828
Console.WriteLine(Math.Log(10)); // ln(10)
Console.WriteLine(Math.Log10(100)); // log10(100) = 2
5️⃣ ฟังก์ชัน Random แบบง่าย
Random rand = new Random();
Console.WriteLine(rand.Next()); // 0 ถึง Int32.MaxValue
Console.WriteLine(rand.Next(1, 11)); // 1 ถึง 10
Console.WriteLine(rand.NextDouble()); // 0.0 ถึง 1.0
-
หมายเหตุ:
Math
ไม่มี Random → ใช้System.Random
6️⃣ ตัวอย่างรวม Math
double x = -7.5;
double y = 2.3;
Console.WriteLine(Math.Abs(x)); // 7.5
Console.WriteLine(Math.Max(x, y)); // 2.3
Console.WriteLine(Math.Min(x, y)); // -7.5
Console.WriteLine(Math.Sqrt(16)); // 4
Console.WriteLine(Math.Round(3.14159, 2)); // 3.14
Console.WriteLine(Math.Sin(Math.PI/2)); // 1
✅ สรุป
Function | ตัวอย่าง | ผลลัพธ์ |
---|---|---|
Abs |
Math.Abs(-5) |
5 |
Max |
Math.Max(2, 10) |
10 |
Min |
Math.Min(2, 10) |
2 |
Ceiling |
Math.Ceiling(3.2) |
4 |
Floor |
Math.Floor(3.8) |
3 |
Round |
Math.Round(3.456,2) |
3.46 |
Sqrt |
Math.Sqrt(16) |
4 |
Pow |
Math.Pow(2,3) |
8 |
Sin/Cos/Tan |
Math.Sin(Math.PI/2) |
1 |
Exp |
Math.Exp(1) |
2.71828 |
Log/Log10 |
Math.Log(10)/Math.Log10(100) |
2.302/2 |
ถ้าคุณอยาก ฉันสามารถทำ ตัวอย่าง Visual + Diagram ของ Math Functions ใช้งานจริง เช่น การคำนวณ distance, angle, หรือ การสร้างกราฟฟังก์ชันทางคณิตศาสตร์ใน C# ให้ดูเข้าใจง่าย ๆ
คุณอยากให้ทำไหม?