Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Real Value to Integer.....

Posted on 1998-09-29
4
Medium Priority
?
1,407 Views
Last Modified: 2008-03-10
Hey folks..

I need to know how to cast a floating point value into an
integer..

Suppose I have declared two variables..

i: Integer;
e: Extended;

Then

i := e;              //Doesn't work
i := Int(e);         //Doesn't work
i := FloatToInt(e);  //Doesn't work
i := Integer(e);     //Doesn't work

What do I do to make this work??
0
Comment
Question by:lar_jens
[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 5

Expert Comment

by:JimBob091197
ID: 1341118
You have to round the float to get the integer:

i := Round(e);

Cheers,
JB
0
 

Accepted Solution

by:
gaona earned 200 total points
ID: 1341119
You have to Trunc the float to get the integer:

i := Trunc(e);

Regards,
Gaona

0
 
LVL 4

Expert Comment

by:erajoj
ID: 1341120
Hah!
You're wrong all of you! Here's the real way to do it:

    i := StrToInt( Copy( Format( '%g', [ e ] ), 1, Pos( DecimalSeparator, Format( '%g', [ e ] ) ) - 1 ) ) +
         StrToInt( Copy( Format( '%g', [ Frac( e ) + 0.5 ] ), Pos( DecimalSeparator, Format( '%g', [ Frac( e ) + 0.5 ] ) ) - 1, 1 ) );

;->

BTW, use JimBob's solution. Never use Trunc unless it is exlplicitly stated that all decimals should be neglected.

/// John
0
 

Expert Comment

by:gaona
ID: 1341121
If you want to round the value of the variable ' e' for the whole closer, discarding its decimals, use the function:  
 
i:=trunc(e+0.5)  
 
that substitutes the function i:=round(e).  
 
thank you for the points.  
 
gaona
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

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

In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
Sometimes it takes a new vantage point, apart from our everyday security practices, to truly see our Active Directory (AD) vulnerabilities. We get used to implementing the same techniques and checking the same areas for a breach. This pattern can re…
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…
Suggested Courses

688 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