doza_and
stitrace
порядок точности исходного неизвестен.
так а что это такое? Если количество десятичных знаков после запятой, то это будет проблематично.
Пример python 2.6^
>>> 345.6
345.60000000000002
Ввел мало знаков - получил много. Внутреннее представление плавающих чисел позволяет узнать сколько есть двоичных знаков а не десятичных. Приведенные два числа эквивалентны.
Попробуйте уточнить - что вы имеете ввиду под порядком точности, может тогда и получится его вычислить.
Короче говоря мы имеем функцию в которую на вход подаётся любое число. К примеру это может быть и 11201 и 1.155778, далее в функции происходит некое математическое действо (умножение, деление и так далее), а на выход должно возвращаться число точно такого же порядка (округление).
def calculate(number):
return number*0.001
len(str(calculate(1.3434)).split('.')) == len(str(number).split('.')) должно быть всегда True, при этом мне не важна особо точность (можно округлением, можно обрезанием), но преобразовывать в строки и отрезать не хотелось бы, хочется изящного.
Количество знаков после запятой в возвращаемом значении, должно быть строго равно количеству знаков после запятой в значении которое подаётся на вход функции.