powershell - PowerShell 中的整数除法

标签 powershell integer-division

在 PowerShell 中进行整数除法的最简单方法是什么?这样参数就是整数,结果也是整数。

在 C++ 中,例如115/10

最佳答案

对于真正的整数除法,请使用 System.Math.Truncate并将结果转换为[int]:

[int] [Math]::Truncate(115 / 10) # -> 11

或者,使用 System.Math.DivRem ,它直接返回一个 [int] (或 [long]):

[Math]::DivRem(115, 10, [ref] $null) # -> 11

PowerShell (Core) 7+ ,可以使用返回元组的其他整数类型特定重载,因此您可以选择使用:

# PowerShell 7+ only.
[Math]::DivRem(115, 10)[0] # -> 11

PowerShell 根据需要扩展数值类型,并切换到 [double] 与整数操作数(任何整数类型,例如 [int])相除,结果是余数。

将除法结果转换为 [int](例如 [int] (115/10))相同使用[Math]::Truncate(),因为它执行半到偶舍入 - 请参阅 this answer了解详情。

关于powershell - PowerShell 中的整数除法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77534160/

相关文章:

Java 读取带有额外空格和 CRLF 的文本文件

java - 为什么整数 div 和 mod 向零舍入?

java - Java中的快速整数除法

algorithm - Knuth 长除法算法

windows - 为什么这个简单的 Powershell 脚本在需要时不退出?

powershell - 如何在powershell中传递 "get-content command "中的变量

powershell - 如何使用 PowerShell 和 System.IO.StreamWriter 编写 Linux 换行符

powershell - 输入带有掩码的密码

c++ - 整数除法舍入库?

c - 如何仅使用 32 位整数类型计算(a 乘以 b)除以 c,即使 a 乘以 b 不适合这种类型