我想:

unknown_function(123.456) -> 456
unknown_function(1234.56) -> 56

或者
unknown_function(123.456) -> "456"

有内置的吗?内置的 trunc/1 则相反:
2> trunc(123.456).
123

C 有这个答案:Extract decimal part from a floating point number in C,Java 有这个答案:How to get the decimal part of a float?

最佳答案

不,这没有什么大不了的,但你可以这样做:

decimal_point(X, DecimalDigits) when X < 0 ->
  decimal_point(-X, DecimalDigits);
decimal_point(X, DecimalDigits)->
  (X - trunc(X)) * math:pow(10,DecimalDigits).

> decimal_point(2.33, 2).
33
> decimal_point(-2.33, 2).
33

关于erlang - 获取浮点数的浮点数/小数部分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44186796/

10-13 02:06