Παρασκευή, 17 Αυγούστου 2018 09:15

Στρογγυλοποίηση δεκαδικών αριθών με ορισμένο αριθμό ψηφίων υποδιαστολής

Στρογγυλοποίηση δεκαδικών αριθμώνΗ Delphi παρέχει τυπικές εντολές για να στρογγυλοποιήσει και να κόψει τους δεκαδικούς αριθμούς. Υπάρχουν όμως περιπτώσεις που δεν καλύπτονται από αυτές.

 

 

Η Delphi παρέχει τις εξής συναρτήσεις για την στρογυλοποίηση και περικοπή των δεκαδικών αριθμών. Παράδειγμα:

Round(12.75) = 13
Trunc(12.75) = 12
Int(12.75) = 12
Frac(12.75) = 0.75

Τι γίνεται αν θέλουμε να χρησιμοποιήσουμε συγκεκριμένο αριθμό δεκαδικών ψηφίων; Για παράδειγμα, θέλουμε να χρησιμοποιήσουμε 2 δεκαδικά ψηφία και το 1,2345 να στρογγυλοποιηθεί σε 1,24 ή 3 δεκαδικά ψηφία και το αποτέλεσμα να είναι 1,235.


Βρείτε παρακάτω τη συνάρτηση nkRound για να δώσετε λύση σε αυτό το πρόβλημα.

Function nkRound(x: Real; DecimalDigits: Integer): Real;
  var
    i, f: integer;
    r: Real;
  begin
    f:=1;
    for i:=1 to DecimalDigits do
      f:=f*10;
    r:=x*f;
    r:=Round(r);
    r:=r/f;
    Result:=r;
  end;

Η συνάρτηση δέχεται δύο παραμέτρους. Τον δεκαδικό αριθμό που θέλουμε να στρογγυλοποιήσουμε και τον αριθμό των δεκαδιών ψηφίων που θέλουμε να εμφανίζονται στο αποτέλεσμα.

Read 603 times Last modified on Παρασκευή, 17 Αυγούστου 2018 09:28
K-Smart

Systems Administrator and Applications Developer

Login to post comments

Αυτήν τη στιγμή επισκέπτονται τον ιστότοπό μας 9 επισκέπτες και κανένα μέλος

ink experts

Στη Ink Experts θα βρείτε συμβατά μελάνια, αναγομωμένα toner και refill kit για όλους τους εκτυπωτές στις καλύτερες τιμές της αγοράς και με την ποιότητα που μόνο η Ink Experts προσφέρει.

https://www.inkexperts.gr/

K-Smart, Πληροφορική

Η έξυπνη σελίδα της Πληροφορικής

email: Αυτή η διεύθυνση ηλεκτρονικού ταχυδρομείου προστατεύεται από τους αυτοματισμούς αποστολέων ανεπιθύμητων μηνυμάτων. Χρειάζεται να ενεργοποιήσετε τη JavaScript για να μπορέσετε να τη δείτε.