Учитывая число в качестве входных данных, определите, сколько значащих цифр оно имеет. Это число должно быть взято как строка, потому что вы должны сделать специальное форматирование. Вы поймете, что я имею в виду в ближайшее время (я думаю).
Цифра - это цифра, если применимо хотя бы одно из следующего:
- Ненулевые цифры всегда значимы.
- Любые нули между двумя значащими цифрами являются значимыми.
- конечный ноль или конечные нули только в десятичной части являются значительными.
- все цифры значимы, если после десятичного разделителя ничего не стоит.
- когда есть только нули, все, кроме последнего нуля, считаются ведущими нулями
вход
Строка или строковый массив числа. В конце может быть десятичная точка без цифры после нее. Это может не иметь десятичной запятой вообще.
Вывод
Сколько есть сиг-фиг.
Примеры
1.240 -> 4
0. -> 1
83900 -> 3
83900.0 -> 6
0.025 -> 2
0.0250 -> 3
2.5 -> 2
970. -> 3
0.00 -> 1
Ответы:
05AB1E ,
1110 байтПопробуйте онлайн! или как тестовый набор
объяснение
источник
Сетчатка,
2927 байтСохранено 2 байта благодаря @MartinEnder
Попробуйте онлайн! | Тестирование
источник
Пакет,
204202 байтаПринимает участие в STDIN. Работает, удаляя конечные нули, если число не содержит a
.
, затем удаляя начальные.
и нули, если только нет нулей, и в этом случае он оставляет один ноль. Наконец, он принимает длину оставшейся строки.источник
%
s за всю свою жизнь: OСкала, 90 байт
Объяснение:
источник
C # 6, 163 байта
Ungolfed
источник