将Int除以Int并返回Int

dem*_*mas 77 int haskell

我需要一个函数,它获得两个Ints(ab)并返回A/Bas Int.我相信这A/B将永远是一个整数.

这是我的解决方案:

myDiv :: Int -> Int -> Int
myDiv a b = 
      let x = fromIntegral a
          y = fromIntegral b
      in truncate (x / y)
Run Code Online (Sandbox Code Playgroud)

但是想找到更简单的解决方案.像这样的东西:

myDiv :: Int -> Int -> Int
myDiv a b = a / b
Run Code Online (Sandbox Code Playgroud)

如何将Int分为Int并获取Int?

Poi*_*nty 137

为什么不用quot

quot a b
Run Code Online (Sandbox Code Playgroud)

是整数a和b的整数商,它被截断为零.

  • 还有`a \`div \`b`; 如果我没记错的话,```截断(像demas想要的那样),`div`向零舍入.所以`( - 3)\`quot \`4 == 0`,和`( - 3)\`div \`4 == -1`. (37认同)
  • `div`向负向无效,而不是零. (10认同)
  • 或者对于中缀爱好者来说是一个```\`b`(哇,你实际上可以用反斜杠来逃避反击提示反击?). (7认同)
  • 'div`为+1.在数学上表现得更好,"quot"是一个婊子,当周围有负数时. (5认同)