[erlang-questions] Flooring integer division in Erlang?
Igor Ribeiro Sucupira
Sun Apr 27 01:59:13 CEST 2008
You could use, for example, the BIF trunc/1.
Something like this:
floorDiv(A, B) ->
Quotient = A / B,
Truncated = trunc(Quotient),
case Truncated > Quotient of
true -> Truncated - 1;
false -> Truncated
On Sat, Apr 26, 2008 at 7:58 PM, Dimitry Golubovsky
> I am implementing a program that converts intermediate output from a
> Haskell compiler (Yhc Core) to Erlang Core. Therefore it is desirable
> to emulate behavior of Haskell operations as closely as possible. So
> whatever could be used, would be good, either high level, or low level
> implementation. Low level could probably be done at the virtual
> machine level, but this does not seem to be the best way as would
> result in custom version of the VM. If there is a high level
> implementation I'd appreciate if you provide a link.
> On Sat, Apr 26, 2008 at 1:37 PM, Igor Ribeiro Sucupira <> wrote:
> > Are you just in need of some (any) high-level implementation? Or
> > you're after some really efficient operator?
> > > Is there any Erlang library around that contains an integer division
> > > function that rounds negative quotient down (towards negative
> > > infunity, flooring division)?
> Dimitry Golubovsky
> Anywhere on the Web
More information about the erlang-questions