Wyzwanie
Biorąc pod uwagę liczbę x
i liczbę n
, zaokrąglaj liczbę x
do n
liczb znaczących i generuj wynik.
Znaczące liczby
Znaczącymi liczbami liczby są cyfry, które niosą znaczenie, przyczyniając się do jej rozdzielczości pomiaru. Dotyczy to wszystkich liczb oprócz zer wiodących.
Pamiętaj, że wiodące zera po przecinku są nadal nieistotnymi cyframi.
Zaokrąglając cyfrę, należy zaokrąglić od zera, jeśli następna cyfra jest większa lub równa pięć.
Wszystkie zera końcowe po przecinku są liczone jako znaczące.
Wejście
Pierwszą liczbą będzie x
liczba do zaokrąglenia. Druga liczba to n
liczba znaczących liczb, które należy zaokrąglić x
.
x
będzie liczbą (twój kod powinien obsługiwać zarówno liczby całkowite, jak i zmiennoprzecinkowe) od -1 000 000 000 do 1 000 000 000 włącznie. n
będzie dodatnią liczbą całkowitą od 1 do 50 włącznie. n
nigdy nie będzie większy niż liczba cyfr w x
.
Wkładem nigdy nie będzie 0
ani żadna forma 0
, np . 0.000
Lub 000
.
Przykłady
Inputs: 2.6754, 2
Output: 2.7
Wyjście 2.7000
byłoby niepoprawne, ponieważ końcowe zera po przecinku są liczone jako liczby znaczące.
Inputs: 0.00034551, 4
Output: 0.0003455
Inputs: 50237.1238, 3
Output: 50200
Pamiętaj, że nie może to być kropka dziesiętna.
Inputs: 2374905, 1
Output: 2000000
Inputs: 543.0489, 4
Output: 543.0
Inputs: 15, 1
Output: 20
Inputs: 520.3, 3
Output: 520
Jeśli chcesz, możesz 520.
zamiast tego wyświetlać dane wyjściowe 520.0
.
Inputs: -53.87, 2
Output: -54
Inputs: 0.0999, 2
Output: 0.10
Zasady
Wbudowane funkcje i biblioteki, które pozwalają zaokrąglić liczbę do n
znaczących liczb, są niedozwolone.
Zwycięski
Najkrótszy kod w bajtach wygrywa.
2.0 x 10^2
, pokazując 2 sigfigs.
Inputs: 520.3, 3
czy przecinek dziesiętny w odpowiedzi nie jest520.
istotny?