2017-02-01 13 views
1

Я пытаюсь уменьшить числоСокращение Числа после точки vb.net

Dim x As String = 7 + 5 + 5/3 
TextBox1.Text = x 

результат будет 1.66666666666667.
Я хочу уменьшить его до точности 1.6.

Я попытался это:

Dim x As String = 5 
TextBox1.Text = String.Format("{0:N}", x/3) 

, что снижает его 1.667.

Но я хочу, чтобы уменьшить его только один числа после точки, как 1.6

+2

Вы хотите '1.6' в отличие от нормально округленного' 1.7'? – Bathsheba

+5

Включить опцию Строгая '7 + 5 + 5/3' не строка – Plutonix

+0

Вы хотите округлить номер или распечатать его в кратчайшие сроки? – GSerg

ответ

3

Вы можете использовать Math.Truncate:

Dim d As Decimal = 5/3 
TextBox1.Text = (Math.Truncate(d * 10)/10).ToString 

Кроме того, рассмотреть вариант поворота строг, потому что вы не должны кормить уравнения в текстовые свойства, подобные этому ... и вы можете уточнить это первое уравнение в своем вопросе, потому что оно не оценивается в 1.66666666666667 в любом случае

+0

спасибо, что это отлично –

0

Вы также можете использовать Math.Round

TextBox1.Text = Math.Round(7 + 5 + 5/3, 2) 

Где 2 это количество десятичных знаков, которые вы хотите показать.