Herausforderung
Mit einer Zahl xund einer Zahl nrunden Sie die Zahl xauf nsignifikante Zahlen und geben das Ergebnis aus.
Bedeutende Zahlen
Die signifikanten Ziffern einer Zahl sind Ziffern, deren Bedeutung zur Messauflösung beiträgt. Dies schließt alle Zahlen mit Ausnahme der führenden Nullen ein.
Bedenken Sie, dass führende Nullen nach dem Komma immer noch unbedeutende Zahlen sind.
Wenn Sie eine Ziffer runden, müssen Sie von Null abrunden, wenn die folgende Ziffer größer oder gleich fünf ist.
Alle nachgestellten Nullen nach einem Dezimalpunkt werden als signifikant gezählt.
Eingang
Die erste Zahl xist die Zahl, die gerundet werden soll. Die zweite Zahl nist die Anzahl der signifikanten Stellen, auf die gerundet werden xsoll.
xwird eine Zahl sein (Ihr Code sollte sowohl Ganzzahlen als auch Gleitkommazahlen verarbeiten) zwischen -1.000.000.000 und 1.000.000.000 einschließlich. nwird eine positive ganze Zahl zwischen 1 und einschließlich 50 sein. nwird niemals größer sein als die Zahl der Ziffern in x.
Die Eingabe wird niemals 0oder irgendeine Form von 0zB 0.000oder sein 000.
Beispiele
Inputs: 2.6754, 2
Output: 2.7
Eine Ausgabe von 2.7000wäre ungültig, da die nachgestellten Nullen nach dem Komma als signifikante Ziffern gezählt werden.
Inputs: 0.00034551, 4
Output: 0.0003455
Inputs: 50237.1238, 3
Output: 50200
Beachten Sie, dass dies kein Dezimalzeichen sein darf.
Inputs: 2374905, 1
Output: 2000000
Inputs: 543.0489, 4
Output: 543.0
Inputs: 15, 1
Output: 20
Inputs: 520.3, 3
Output: 520
Wenn Sie möchten, können Sie 520.stattdessen aber nicht ausgeben 520.0.
Inputs: -53.87, 2
Output: -54
Inputs: 0.0999, 2
Output: 0.10
Regeln
Eingebaute Funktionen und Bibliotheken, mit denen Sie eine Zahl auf nsignifikante Zahlen runden können, sind nicht zulässig.
Gewinnen
Der kürzeste Code in Bytes gewinnt.
2.0 x 10^2, dass die 2 Sigfigs angezeigt werden.
Inputs: 520.3, 3ist der Dezimalpunkt in der Antwort nicht520.entscheidend?