0Pricing
Java Academy · บทเรียน

การปัดเศษและขีดจำกัดทางคณิตศาสตร์

floor, ceil, round, min, max

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

การปัดเศษและการจำกัดค่า

บทเรียนนี้มุ่งเน้นกลุ่มเมธอด Math สำหรับการปัดเศษ ได้แก่ floor, ceil และ round รวมถึงการจำกัดค่าให้อยู่ในช่วงด้วย min และ max

Math.floor

Math.floor จะปัดลงเป็นค่าจำนวนเต็มที่ใกล้ที่สุด โดยส่งคืนค่าเลขทศนิยม Math.floor(2.9) คือ 2.0

public class Main {
    public static void main(String[] args) {
        System.out.println(Math.floor(2.9));
        System.out.println(Math.floor(-2.1));
    }
}

Math.ceil

Math.ceil จะปัดขึ้น Math.ceil(2.1) คือ 3.0 และ Math.ceil(-2.9) คือ -2.0

public class Main {
    public static void main(String[] args) {
        System.out.println(Math.ceil(2.1));
        System.out.println(Math.ceil(-2.9));
    }
}

Math.round

Math.round จะปัดเป็นจำนวนเต็มที่ใกล้ที่สุด โดยกรณีที่กึ่งกลางพอดี (.5) จะปัดขึ้น สำหรับอาร์กิวเมนต์เลขทศนิยม เมธอดนี้จะส่งคืนจำนวนเต็มขนาดยาว

public class Main {
    public static void main(String[] args) {
        System.out.println(Math.round(2.4));
        System.out.println(Math.round(2.5));
        System.out.println(Math.round(-2.5));
    }
}

ความน่าประหลาดใจในการปัดเลขติดลบ

สำหรับค่าติดลบ floor จะไปทางค่าที่ติดลบมากขึ้น ส่วน ceil จะปัดเข้าหาศูนย์ Math.round(-2.5) คือ -2 เพราะเป็นการปัดครึ่งขึ้น หรือปัดเข้าหาอนันต์บวก

การตัดเศษด้วยการแปลงชนิด

การแปลงเลขทศนิยมเป็นจำนวนเต็มจะตัดส่วนเศษทศนิยมออกโดยปัดเข้าหาศูนย์ วิธีนี้แตกต่างจาก floor เมื่อเป็นค่าติดลบ

public class Main {
    public static void main(String[] args) {
        System.out.println((int) 2.9);
        System.out.println((int) -2.9);
        System.out.println((int) Math.floor(-2.9));
    }
}

ค่าต่ำสุดและค่าสูงสุดสำหรับจำกัดช่วง

รวม Math.max และ Math.min เพื่อจำกัดค่าให้อยู่ในช่วง Math.max(0, Math.min(100, v)) จะทำให้ค่าดังกล่าวอยู่ระหว่าง 0 ถึง 100

public class Main {
    public static void main(String[] args) {
        int v = 130;
        int clamped = Math.max(0, Math.min(100, v));
        System.out.println(clamped);
    }
}

Math.clamp

Java สมัยใหม่เพิ่ม Math.clamp(value, min, max) ซึ่งจัดค่าให้อยู่ในช่วงที่กำหนดได้โดยตรง และอ่านง่ายกว่าการเรียกค่าต่ำสุด/ค่าสูงสุดซ้อนกัน

public class Main {
    public static void main(String[] args) {
        System.out.println(Math.clamp(130, 0, 100));
        System.out.println(Math.clamp(-5, 0, 100));
        System.out.println(Math.clamp(50, 0, 100));
    }
}

floorDiv และ floorMod

การหารจำนวนเต็มจะตัดเศษเข้าหาศูนย์ ซึ่งอาจทำให้เกิดความประหลาดใจเมื่อใช้กับจำนวนลบ ส่วน Math.floorDiv และ Math.floorMod จะปัดเข้าหาอนันต์ลบ ทำให้ได้ผลลัพธ์ที่สอดคล้องกัน

public class Main {
    public static void main(String[] args) {
        System.out.println(-7 / 2);
        System.out.println(Math.floorDiv(-7, 2));
        System.out.println(Math.floorMod(-7, 2));
    }
}

การปัดเศษเป็นตำแหน่งทศนิยม

หากต้องการปัดเศษให้เหลือทศนิยม N ตำแหน่ง ให้ขยายค่า ปัดเศษ แล้วลดค่ากลับลงมา เช่น ปัด x ให้เหลือ 2 ตำแหน่งด้วย Math.round(x * 100.0) / 100.0

public class Main {
    public static void main(String[] args) {
        double price = 3.14159;
        double rounded = Math.round(price * 100.0) / 100.0;
        System.out.println(rounded);
    }
}

การเลือกวิธีปัดเศษ

ใช้ floor เพื่อปัดลงเสมอ ใช้ ceil เพื่อปัดขึ้นเสมอ ใช้ round เพื่อปัดไปยังค่าที่ใกล้ที่สุด และใช้การแปลงชนิดเพื่อตัดเศษ หากต้องจำกัดช่วงของค่า ให้เลือกใช้ Math.clamp

ตรวจสอบความเข้าใจ

ทดสอบความเข้าใจเรื่องการปัดเศษของคุณ

ทบทวน

คุณได้เรียนรู้เรื่องการปัดเศษและการจำกัดช่วงของค่า

  • floor ปัดลง ceil ปัดขึ้น และ round ปัดไปยังค่าที่ใกล้ที่สุด (หากห่างเท่ากันจะปัดขึ้น)
  • การแปลงชนิดจะตัดเศษเข้าหาศูนย์
  • Math.clamp (หรือการเรียกค่าต่ำสุด/ค่าสูงสุดซ้อนกัน) จะจำกัดค่าให้อยู่ในช่วงที่กำหนด
  • floorDiv และ floorMod จัดการจำนวนลบได้อย่างสอดคล้องกัน

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

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

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

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

floor, ceil, round, min, max คุณปฏิบัติ Java Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

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

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

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

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

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

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

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

  1. คลาส Math
  2. การสร้างตัวเลขสุ่ม
  3. ช่วงสุ่มและการสับเปลี่ยน
  4. การปัดเศษและขีดจำกัดทางคณิตศาสตร์
← กลับไปที่ Java Academy