คำถามติดแท็ก rounding

การปัดเศษค่าตัวเลขหมายถึงการแทนที่ด้วยค่าอื่นที่มีค่าเท่ากันโดยประมาณ แต่มีการแสดงที่สั้นกว่าง่ายกว่าหรือชัดเจนกว่า

30
ปัดเศษทศนิยมไม่เกิน 2 ตำแหน่ง (หากจำเป็น)
ฉันต้องการที่จะรอบที่มากที่สุดทศนิยม 2 ตำแหน่ง แต่เฉพาะในกรณีที่จำเป็น การป้อนข้อมูล: 10 1.7777777 9.1 เอาท์พุท: 10 1.78 9.1 ฉันจะทำสิ่งนี้ใน JavaScript ได้อย่างไร


30
วิธีการปัดเศษทศนิยมเป็นทศนิยมใน Java
สิ่งที่ฉันต้องการคือวิธีการแปลง double เป็น string ซึ่งปัดโดยใช้ half-up method เช่นถ้าทศนิยมที่จะปัดเศษเป็น 5 มันจะปัดเศษเป็นตัวเลขถัดไปเสมอ นี่เป็นวิธีมาตรฐานในการปัดเศษที่คนส่วนใหญ่คาดหวังในสถานการณ์ส่วนใหญ่ ฉันต้องการให้แสดงเฉพาะตัวเลขที่สำคัญเท่านั้น - นั่นคือไม่ควรมีเลขศูนย์ต่อท้าย ฉันรู้วิธีหนึ่งในการทำเช่นนี้คือการใช้String.formatวิธีการ: String.format("%.5g%n", 0.912385); ผลตอบแทน: 0.91239 อันไหนดี แต่มันจะแสดงตัวเลขที่มีทศนิยม 5 ตำแหน่งเสมอแม้ว่ามันจะไม่สำคัญ: String.format("%.5g%n", 0.912300); ผลตอบแทน: 0.91230 วิธีอื่นคือใช้DecimalFormatter: DecimalFormat df = new DecimalFormat("#.#####"); df.format(0.912385); ผลตอบแทน: 0.91238 อย่างไรก็ตามอย่างที่คุณเห็นนี่ใช้การปัดเศษแบบครึ่งคู่ นั่นคือมันจะปัดเศษหากตัวเลขก่อนหน้านี้เป็นเลขคู่ สิ่งที่ฉันต้องการคือ: 0.912385 -> 0.91239 0.912300 -> 0.9123 วิธีที่ดีที่สุดในการบรรลุสิ่งนี้ใน Java คืออะไร?
1259 java  decimal  rounding  digits 

17
ฉันจะปัดเศษทศนิยมเป็นทศนิยม 2 ตำแหน่ง (สำหรับผลลัพธ์บนหน้าเว็บ)
เมื่อแสดงค่าทศนิยมในขณะนี้ด้วย .ToString()ความแม่นยำเหมือนทศนิยม 15 ตำแหน่งและเนื่องจากฉันใช้เพื่อแทนดอลลาร์และเซ็นต์ฉันต้องการเฉพาะผลลัพธ์เป็นทศนิยม 2 ตำแหน่ง ฉันใช้รูปแบบของ.ToString()สิ่งนี้หรือไม่?
649 c#  .net  decimal  rounding 

29
การจัดรูปแบบตัวเลขด้วยทศนิยมสองตำแหน่งใน JavaScript
ฉันมีรหัสบรรทัดนี้ซึ่งปัดเศษตัวเลขเป็นทศนิยมสองตำแหน่ง แต่ฉันได้รับตัวเลขเช่นนี้: 10.8, 2.4, ฯลฯ นี่ไม่ใช่ความคิดของฉันเกี่ยวกับทศนิยมสองตำแหน่งดังนั้นฉันจะปรับปรุงสิ่งต่อไปนี้ได้อย่างไร Math.round(price*Math.pow(10,2))/Math.pow(10,2); ฉันต้องการตัวเลขเช่น 10.80, 2.40 เป็นต้นการใช้ jQuery ใช้ได้กับฉัน

23
แสดงจำนวนทศนิยมสองตำแหน่ง
วิธีที่ถูกต้องในการปัดเศษสตริง PHP เป็นทศนิยมสองตำแหน่งคืออะไร $number = "520"; // It's a string from a database $formatted_number = round_to_2dp($number); echo $formatted_number; ผลลัพธ์ควรเป็น 520.00 ; round_to_2dp()นิยามฟังก์ชันควรเป็นอย่างไร

5
ทำไม Math.round (0.49999999999999994) ส่งคืน 1
ในโปรแกรมต่อไปนี้คุณจะเห็นว่าแต่ละค่าน้อยกว่า.5จะถูกปัดเศษลงยกเว้น0.5จะถูกปัดเศษลงยกเว้น for (int i = 10; i >= 0; i--) { long l = Double.doubleToLongBits(i + 0.5); double x; do { x = Double.longBitsToDouble(l); System.out.println(x + " rounded is " + Math.round(x)); l--; } while (Math.round(x) > i); } พิมพ์ 10.5 rounded is 11 10.499999999999998 rounded is 10 9.5 rounded …

24
คุณจะปัดเศษตัวเลขใน Python อย่างไร
ปัญหานี้กำลังฆ่าฉัน หนึ่งรอบหมายเลขขึ้นในงูหลามได้อย่างไร ฉันลองปัดเศษ (ตัวเลข) แต่ปัดเศษตัวเลขลง ตัวอย่าง: round(2.3) = 2.0 and not 3, what I would like ฉันลอง int (หมายเลข + .5) แต่มันปัดเศษตัวเลขลงอีกรอบ! ตัวอย่าง: int(2.3 + .5) = 2 จากนั้นฉันลองรอบ (หมายเลข + .5) แต่มันจะไม่ทำงานในกรณีขอบ ตัวอย่าง: WAIT! THIS WORKED! กรุณาแนะนำ



21
คุณปัดเศษทศนิยม 1 ตำแหน่งใน Javascript อย่างไร
คุณสามารถปัดเศษตัวเลขใน javascript เป็น 1 อักขระหลังจุดทศนิยม (ปัดเศษอย่างเหมาะสม) ได้หรือไม่? ฉันลอง * 10, กลม, / 10 แต่มันเหลือทศนิยมสองตำแหน่งที่ส่วนท้ายของ int

17
จะปัดเศษตัวเลขใน javascript ได้อย่างไร?
ฉันต้องการยกตัวอย่างเช่น6.688689ไป6.7แต่มันจะแสดงให้ฉัน7เสมอ วิธีการของฉัน: Math.round(6.688689); //or Math.round(6.688689, 1); //or Math.round(6.688689, 2); แต่ผลลัพธ์จะเหมือนกันเสมอ7... ฉันทำผิดอะไร

5
เหตุใด. NET จึงใช้การปัดเศษของนายธนาคารเป็นค่าเริ่มต้น
ตามเอกสารอธิบายdecimal.Roundวิธีการใช้อัลกอริธึมแบบรอบต่อคู่ซึ่งไม่ใช่เรื่องธรรมดาสำหรับแอปพลิเคชันส่วนใหญ่ ดังนั้นฉันมักจะเขียนฟังก์ชันแบบกำหนดเองเพื่อทำอัลกอริธึมแบบครึ่งรอบที่เป็นธรรมชาติมากขึ้น: public static decimal RoundHalfUp(this decimal d, int decimals) { if (decimals < 0) { throw new ArgumentException("The decimals must be non-negative", "decimals"); } decimal multiplier = (decimal)Math.Pow(10, decimals); decimal number = d * multiplier; if (decimal.Truncate(number) < number) { number += 0.5m; } return decimal.Round(number) / multiplier; } …
271 .net  rounding 

12
การจัดรูปแบบตำแหน่งทศนิยมใน R
ฉันมีตัวเลขตัวอย่างเช่น 1.128347132904321674821 ที่ฉันต้องการแสดงเป็นทศนิยมสองตำแหน่งเท่านั้นเมื่อส่งออกไปยังหน้าจอ (หรือเขียนลงไฟล์) เราจะทำอย่างนั้นได้อย่างไร? x <- 1.128347132904321674821 แก้ไข: การใช้: options(digits=2) ได้รับการแนะนำว่าเป็นคำตอบที่เป็นไปได้ มีวิธีการระบุสิ่งนี้ภายในสคริปต์สำหรับใช้ครั้งเดียวหรือไม่? เมื่อฉันเพิ่มลงในสคริปต์ของฉันดูเหมือนว่าจะไม่ได้ทำอะไรที่แตกต่างกันและฉันไม่สนใจที่จะพิมพ์อีกครั้งเพื่อจัดรูปแบบแต่ละหมายเลข (ฉันกำลังทำรายงานขนาดใหญ่โดยอัตโนมัติ) - คำตอบ: รอบ (x, ตัวเลข = 2)
264 r  formatting  rounding  r-faq 

7
ปัดเศษทศนิยมสองตำแหน่งใน C # หรือไม่
ฉันต้องการปัดเศษสองค่าเป็นทศนิยมสองตำแหน่งใน c # ฉันจะทำอย่างไร double inputValue = 48.485; หลังจากรอบขึ้น inputValue = 48.49; ที่เกี่ยวข้อง: c # - ฉันจะปัดเศษทศนิยมเป็นทศนิยม 2 ตำแหน่งได้อย่างไร (สำหรับผลลัพธ์บนหน้า)
258 c#  double  rounding 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.