Tôi muốn làm tròn giá trị gấp đôi ở hai vị trí thập phân trong c # làm thế nào tôi có thể làm điều đó?
double inputValue = 48.485;
sau khi làm tròn
inputValue = 48.49;
Tôi muốn làm tròn giá trị gấp đôi ở hai vị trí thập phân trong c # làm thế nào tôi có thể làm điều đó?
double inputValue = 48.485;
sau khi làm tròn
inputValue = 48.49;
Câu trả lời:
Những công việc này:
inputValue = Math.Round(inputValue, 2);
Math.Round(inputValue, 2, MidpointRounding.AwayFromZero)
Bạn nên sử dụng
inputvalue=Math.Round(inputValue, 2, MidpointRounding.AwayFromZero)
Math.Round làm tròn một giá trị dấu phẩy động có độ chính xác kép đến một số chữ số phân số đã chỉ định.
Chỉ định cách các phương pháp làm tròn toán học nên xử lý một số nằm giữa hai số.
Về cơ bản, hàm trên sẽ lấy giá trị đầu vào của bạn và làm tròn nó thành 2 (hoặc bất kỳ số nào bạn chỉ định) vị trí thập phân. Với MidpointRounding.AwayFromZero
khi một số nằm giữa hai số khác, nó được làm tròn về phía số gần nhất nằm cách 0. Ngoài ra còn có một tùy chọn khác mà bạn có thể sử dụng các vòng đó theo số chẵn gần nhất.
Sử dụng Math.Round
value = Math.Round(48.485, 2);
bạn có thể thử một từ bên dưới. Có nhiều cách cho việc này.
1.
value=Math.Round(123.4567, 2, MidpointRounding.AwayFromZero) //"123.46"
2.
inputvalue=Math.Round(123.4567, 2) //"123.46"
3.
String.Format("{0:0.00}", 123.4567); // "123.46"
4.
string.Format("{0:F2}", 123.456789); //123.46
string.Format("{0:F3}", 123.456789); //123.457
string.Format("{0:F4}", 123.456789); //123.4568