Search the Community
Showing results for tags 'rtl'.
Found 4 results
-
program Project2; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils, System.Math; begin var a,b:double; a:=1.015; b:=2.275; writeln(round(a*Power(10,2))); writeln(round(b*Power(10,2))); readln; end. Please run as 32 and 64bit I split this off to its own topic, so that future readers will find this tightly packaged. Please consider creating a new thread for any question/issue/remark that is not exactly the same as the opening post of a thread - Sherlock
-
Hello, I need to fire some action very precisely AFAIK I cannot fully trust to Ttimer(accuracy) Maybe question is stupid or trivial but how get something similar like below but using the most precise method(TStopwatch) procedure TForm1.Timer1Timer(Sender: TObject); begin // Do something every 1 second(timer interval set to 1000ms) end;
-
Hi all, what is the fastest way to compare two vars of the TIntegerDynArray type? Thank you in advance for your suggestions.
-
How can I get same rounded value using SimpleRoundTo?
ertank posted a topic in RTL and Delphi Object Pascal
Hello, Using Delphi 10.4.2 I get different rounded values using below code. Purpose is to round up and have 13.98 for both. uses System.Math; procedure TForm1.Button1Click(Sender: TObject); var ToBeRounded: Double; Rounded: Double; begin ToBeRounded := 55.9 * 0.25; Rounded := SimpleRoundTo(ToBeRounded, -2); ShowMessage(ToBeRounded.ToString() + ' ' + Rounded.ToString()); // ToBeRounded is 13.975 and Rounded is 13.97 at this point Rounded := SimpleRoundTo(13.975, -2); ShowMessage(Rounded.ToString); // Rounded is 13.98 at this point end; If one reads help file it has following table for expected results I do not have deep floating point knowledge. I basically know they have a lot more digits than displayed. My question is, how can I always get 13.98 as result using multiplications and such. Thanks & Regards, Ertan