Τύπος Excel: Στρογγυλοποιήστε έναν αριθμό σε n σημαντικά ψηφία -

Πίνακας περιεχομένων

Γενική φόρμουλα

=ROUND(number,digits-(1+INT(LOG10(ABS(number)))))

Περίληψη

Εάν πρέπει να στρογγυλοποιήσετε έναν αριθμό σε έναν δεδομένο (μεταβλητό) αριθμό καθορισμένων ψηφίων ή αριθμών, μπορείτε να το κάνετε με έναν κομψό τύπο που χρησιμοποιεί τις συναρτήσεις ROUND και LOG10.

Στο παράδειγμα που παρουσιάζεται, ο τύπος στο D6 έχει ως εξής:

=ROUND(B6,C6-(1+INT(LOG10(ABS(B6)))))

Εξήγηση

Αυτό μπορεί να είναι ένας εκφοβιστικός τύπος αν δεν έχετε καλό υπόβαθρο στα μαθηματικά, αλλά ας το κάνουμε βήμα-βήμα

Πρώτον, όταν έχετε μια φόρμουλα όπως αυτή όπου μια συνάρτηση (σε αυτήν την περίπτωση ROUND) τυλίγεται γύρω από όλες τις άλλες, είναι συχνά χρήσιμο να εργάζεστε από έξω μέσα. Έτσι, στον πυρήνα, αυτός ο τύπος στρογγυλοποιεί την τιμή στο B6 χρησιμοποιώντας το ROUND λειτουργία:

=ROUND(B6,x)

Όπου x είναι ο απαιτούμενος αριθμός σημαντικών ψηφίων. Το δύσκολο μέρος αυτού του τύπου είναι ο υπολογισμός x. Αυτή είναι μια μεταβλητή, γιατί θα αλλάξει ανάλογα με τον αριθμό που στρογγυλοποιείται. Το x υπολογίζεται με αυτό το bit:

C6-(1+INT(LOG10(ABS(B6))))

Αυτό φαίνεται περίπλοκο, οπότε ας δούμε πρώτα πώς πρέπει να λειτουργεί ο τύπος για τα συγκεκριμένα παραδείγματα. Θυμηθείτε με το ROUND ότι ένας αρνητικός αριθμός ψηφίων λειτουργεί στην αριστερή πλευρά του δεκαδικού. Έτσι, για τον γύρο 1234567 σε έναν αυξανόμενο αριθμό σημαντικών ψηφίων, θα έχουμε:

=ROUND(1234567,-6) = 1000000 // 1 sig. digit =ROUND(1234567,-5) = 1200000 // 2 sig. digits =ROUND(1234567,-4) = 1230000 // 3 sig. digits =ROUND(1234567,-3) = 1235000 // 4 sig. digits

Έτσι, το κύριο πρόβλημα είναι πώς να υπολογίσετε -6, -5, -4 και ούτω καθεξής ανάλογα με τον αριθμό που στρογγυλοποιούμε.

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

=ROUND(1234567,-6) = 1000000 = 1.0*10^6 =ROUND(1234567,-5) = 1200000 = 1.2*10^6 =ROUND(1234567,-4) = 1230000 = 1.23*10^6 =ROUND(1234567,-3) = 1235000 = 1.235*10^6

Σημειώστε ότι ο εκθέτης είναι 6 σε όλες τις περιπτώσεις, το οποίο καθορίζεται με αυτό το bit:

INT(LOG10(ABS(B6)))

Έτσι, ο υπόλοιπος τύπος χρησιμοποιεί απλώς την υπολογιζόμενη εκθετική τιμή για να υπολογίσει τον σωστό αριθμό για να δώσει το ROUND ανάλογα με τον αριθμό των σημαντικών ψηφίων που επιθυμείτε:

=ROUND(1234567,-6) // 1-(1+6) = -6 =ROUND(1234567,-5) // 2-(1+6) = -5 =ROUND(1234567,-4) // 3-(1+6) = -4 =ROUND(1234567,-3) // 4-(1+6) = -3

Συνοπτικά λοιπόν:

  1. Το ABS μετατρέπει την τιμή σε απόλυτη (θετική) τιμή
  2. Το LOG10 παίρνει τον εκθέτη, σε αυτήν την περίπτωση 6 με δεκαδική τιμή
  3. Το INT κόβει το δεκαδικό μέρος του εκθέτη
  4. Ο τύπος χρησιμοποιεί τον εκθετικό και τα παρεχόμενα σημαντικά ψηφία για να υπολογίσει τον σωστό αριθμό ψηφίων για να δώσει το ROUND
  5. Το ROUND στρογγυλοποιεί τον αριθμό χρησιμοποιώντας τον αριθμό των παρεχόμενων ψηφίων

Καλές συνδέσεις

Στρογγυλοποίηση σε σημαντικές φιγούρες στο Excel (vertex42.com) Εισαγωγή επιστημονικής συμβολής (Khan Academy)

ενδιαφέροντα άρθρα...