# Tutorial :Value was either too large or too small for a Decimal

### Question:

I have the following piece of code:

``double shortfall = GetSomeNumber(); //3.3588548831176006E+29    if (shortfall > 0)  {    returnValue = Convert.ToDecimal(shortfall);  }  ``

That generates the above error.

Can anyone help me with it please?

### Solution:1

Well, it's fairly self-explanatory.

`decimal.MaxValue` is 79,228,162,514,264,337,593,543,950,335 - your number is bigger than this.

Although `decimal` has a finer precision than `double`, `double` has a bigger range - it can handle very, very large and very, very small numbers.

Now, if you could tell us what you're really trying to do, we could try to help find a solution... it's rarely a good idea to mix `double` and `decimal`, to be honest.

### Solution:2

It means that the value returned cannot be converted to decimal as it is too large.

Decimal values can be between positive 79,228,162,514,264,337,593,543,950,335 to negative 79,228,162,514,264,337,593,543,950,335 - see MSDN.

Double can handle much larger numbers - negative 1.79769313486232e308 to positive 1.79769313486232e308. These will not all be convertible to Decimal.

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »