# bcb4 ROUND(x,2)

I'm trying to cut my float values to 2 decimals precision somthing like 1.2345 to be 1.23
I found the ROUND function in borland c++ builder help but when i try to implement this function i'm getting error about function name (ROUND)
i also included math.h but it still dont work
I know that i can multiply my nuber with 100 and then roundit down to 0 decimal places and then devide it with 100 to get what i need but it is to messy

What's wrong with ROUND

Regards,Vedran
###### Who is Participating?

x

Commented:
ROUND is one of 125 functions of
Formaula 1 Worksheet. Help(vtss.hlp)
explains what it is and how use it.
That what you want:

double round(double a,int n)
{
double a1 = a;
for (int i = 0; i < n; i++)
a1 *= 10.0;
long i = long(a1+0.5);//round
a1 = i;
for (int i = 0; i < n;i++)
a1 /= 10.0;
return a1;
}
0

Commented:
All of the all upper case functions are not a part of the C++ language but routines in one of the ActiveX controls that comes with BCB.

You could use the floor() and ceil() functions.

#include <math.h>
#include <stdio.h>

int main(void)
{
double number = 123.54;
double down, up;

down = floor(number);
up = ceil(number);

printf("original number     %5.2lf\n", number);
printf("number rounded down %5.2lf\n", down);
printf("number rounded up   %5.2lf\n", up);

return 0;
}
0

Author Commented:
Thanks for details
Regards

Vedran
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.