Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   ASP General (http://www.velocityreviews.com/forums/f65-asp-general.html)
-   -   Formatting percent and dealing with division by zero problems (http://www.velocityreviews.com/forums/t789784-formatting-percent-and-dealing-with-division-by-zero-problems.html)

 Bill 08-29-2003 01:02 AM

Formatting percent and dealing with division by zero problems

I have some values that I want to display as percent, such as the
retail price/wholesale price. In some instances, the wholesale price
is zero, so I get a division by zero error.

What can I do to avoid this?

Also, how can I get this to only show two decimals, instead of it
going .##### the way it does. I want it to look like .45%

Thanks a million,

Bill

 Aaron Bertrand [MVP] 08-29-2003 01:26 AM

Re: Formatting percent and dealing with division by zero problems

> I have some values that I want to display as percent, such as the
> retail price/wholesale price. In some instances, the wholesale price
> is zero, so I get a division by zero error.
>
> What can I do to avoid this?

if wholesaleprice > 0 then
response.write retailprice / wholesaleprice
else
response.write retailprice / retailprice
end if

> Also, how can I get this to only show two decimals, instead of it
> going .##### the way it does. I want it to look like .45%

Look at the formatnumber / formatpercent functions.

 dlbjr 08-29-2003 03:45 AM

Re: Formatting percent and dealing with division by zero problems

function Divide(strNom,strDenom,intDecimal)
Divide = 0
if IsNumeric(strNom) and IsNumeric(strDenom) then
if CDbl(strNom) > 0 and CDbl(strDenom) > 0 then
if IsNumeric(intDecimal) then
intDecimal = FormatNumber(CDbl(Abs(intDecimal)),0)
else
intDecimal = 2
end if
Divide = FormatNumber(CDbl(strNom) / CDbl(strDenom),intDecimal)
end if
end if
end function

'Example
Response.Write Divide(234,321,3)

-dlbjr

invariable unerring alien

 Bill 08-29-2003 03:13 PM

Re: Formatting percent and dealing with division by zero problems

Thank you for the function! For your own knowlede, in order to calculate
the percent markdown from a retail price, the correct way to do it is
(denominator - numerator)/denominator

so if we're selling a \$10 dollar item for \$9, and we want to show that
is a 10% discount, it would be
(10-9)/10
1/10 = 10%

Your equation simply showed the numerator over the denominator.

By the way, this isn't adding the percent sign, I have to concatenate it
manually. Any way for that formatting to happen with a function?

Thanks again,

Bill

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!

 Aaron Bertrand - MVP 08-29-2003 03:16 PM

Re: Formatting percent and dealing with division by zero problems

> By the way, this isn't adding the percent sign, I have to concatenate it
> manually. Any way for that formatting to happen with a function?

Have you looked at the formatpercent function?

 All times are GMT. The time now is 03:22 AM.