Solved

How to round a number in vb.net

Posted on 2011-09-20
4
445 Views
Last Modified: 2012-05-12
Hi Experts,
I need to round numbers up and keep 4 decimal places. as I understand vb does not round up but down.for example the number 0.3456712 needs to be a double type:0.3457
how can I do that please??
0
Comment
Question by:Hagita
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
4 Comments
 
LVL 1

Accepted Solution

by:
jdruper earned 63 total points
ID: 36567532
Hi Hagita,

All you need to do is use the Math.Round() method, it will round up or down depending on your number, you can also use its overload to specify how many places you want to round.

For example:

Math.Round(0.3456712 , 4) will return 0.3457

Math.Round(2.34 , 2) will return 2.30

Hope this helps.
0
 
LVL 18

Assisted Solution

by:lludden
lludden earned 125 total points
ID: 36567541
VB.Net does standard rounding.  If value is .5 or more, it rounds up, else it rounds down

        Dim v As Double = 0.3456712
        MsgBox(Math.Round(v, 4).ToString)

0
 
LVL 18

Assisted Solution

by:lludden
lludden earned 125 total points
ID: 36567559
Actually, it is more precise than that.  The standard method for rounding is that if it is >.5 is rounds up, if it is less than .5 it rounds down.  If it is exactly .5, it rounds either up or down, depending on the value of the previous digit - odd rounds up, even rounds down.

So 1.0055 rounded to 3 places is 1.006 and 1.0045 is 1.005
This is the standard way to even out rounding errors.
0
 
LVL 15

Assisted Solution

by:x77
x77 earned 62 total points
ID: 36567598
       Dim x = Math.Round(1234.545, 2, MidpointRounding.AwayFromZero) ' Result: 1234,55
        Dim y = Math.Round(1234.545, 2, MidpointRounding.ToEven)              'Result:1234,54

Use AwayFromZero to minimize error.

Use ToEven where you are using money. Bank round.
0

Featured Post

[Webinar] Learn How Hackers Steal Your Credentials

Do You Know How Hackers Steal Your Credentials? Join us and Skyport Systems to learn how hackers steal your credentials and why Active Directory must be secure to stop them. Thursday, July 13, 2017 10:00 A.M. PDT

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Microsoft Reports are based on a report definition, which is an XML file that describes data and layout for the report, with a different extension. You can create a client-side report definition language (*.rdlc) file with Visual Studio, and build g…
Creating an analog clock UserControl seems fairly straight forward.  It is, after all, essentially just a circle with several lines in it!  Two common approaches for rendering an analog clock typically involve either manually calculating points with…
In this video you will find out how to export Office 365 mailboxes using the built in eDiscovery tool. Bear in mind that although this method might be useful in some cases, using PST files as Office 365 backup is troublesome in a long run (more on t…
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question