Elm:
การปัดเศษของตัวเลข
วิธีทำ:
โมดูล Basics
ของ Elm มีฟังก์ชันการปัดเศษที่ดีมากๆ เช่น round
, floor
, และ ceiling
นี่คือวิธีการใช้งาน
import Basics exposing (round, floor, ceiling)
-- ปัดเศษเป็นจำนวนเต็มที่ใกล้เคียงที่สุด
round 3.14 --> 3
round 3.5 --> 4
-- ปัดเศษลง
floor 3.999 --> 3
-- ปัดเศษขึ้น
ceiling 3.001 --> 4
-- ตัดทศนิยมโดยไม่ทำการปัดเศษ
truncate 3.76 --> 3
Elm ยังมี toLocaleString
สำหรับการปัดเศษเป็นจำนวนทศนิยมที่กำหนดไว้เป็นจำนวนเท่าไหร่ก็ได้
import Float exposing (toLocaleString)
-- ปัดเศษเป็นสองทศนิยม
toLocaleString 2 3.14159 --> "3.14"
ล้ำลึก
Elm เป็นภาษาฟังก์ชันที่มีการกำหนดประเภทข้อมูลอย่างเข้มงวด ด้วยการกำหนดให้ผลกระทบข้างนอกอยู่ที่ขอบของโครงสร้าง นั่นหมายความว่าฟังก์ชันเช่นการปัดเศษต้องเป็นลักษณะที่บริสุทธิ์และทำนายได้อย่างประมาณการ. ในประวัติศาสตร์, การปัดเศษเป็นการดำเนินการที่พบเห็นได้บ่อยในหลายภาษาโปรแกรมมิ่งที่ต้องจัดการกับความไม่แน่นอนของการคำนวณทศนิยมลอย
วิธีการปัดเศษของ Elm นั้นตรงไปตรงมา - ฟังก์ชันยึดถือหลักคำนิยามทางคณิตศาสตร์สำหรับการปัดเศษลง, ปัดเศษขึ้น, และการปัดเศษลง Elm คาดการณ์ถึงความต้องการทั่วไปโดยการมีฟังก์ชันในตัวมากมาย เนื่องจากการจัดการความแม่นยำเป็นสิ่งที่ต้องมีความต้องการบ่อยครั้ง เฉพาะอย่างยิ่งในด้านการเงินและกราฟิก
ทางเลือกอื่นๆ สำหรับฟังก์ชันในตัวของ Elm อาจรวมถึงการทำงานปรับแต่งด้วยตนเองโดยใช้การดำเนินการทางคณิตศาสตร์ แต่นั่นหมายถึงการเพิ่มความซับซ้อนที่ไม่จำเป็นเมื่อไลบรารี่มาตรฐานสามารถทำงานได้อย่างมีประสิทธิภาพอยู่แล้ว
ในเวอร์ชั่นปัจจุบัน, Elm ใช้การคำนวณทศนิยมลอยใน JavaScript เป็นพื้นฐานในการดำเนินการเหล่านี้, ดังนั้นจึงคงไว้ซึ่งมาตรฐาน IEEE 754 ซึ่งเป็นสิ่งที่ควรจำเมื่อพิจารณาถึงความแม่นยำและความเป็นไปได้ของข้อผิดพลาดของทศนิยมลอย
ดูเพิ่มเติม
- คู่มือการใช้งานโมดูล
Basics
อย่างเป็นทางการของ Elm: https://package.elm-lang.org/packages/elm/core/latest/Basics - การดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการคำนวณตัวเลขทศนิยมลอยในการคำนวณ: https://floating-point-gui.de/
- โมดูล
Float
ของ Elm สำหรับการดำเนินการกับตัวเลขทศนิยมลอยเพิ่มเติม: https://package.elm-lang.org/packages/elm/core/latest/Float