PowerShell函数查找数字的平方:

时间:2016-06-01 03:27:21

标签: function powershell

这是我找到值的平方的函数:

function Get-Square($value)
{
    $result = $value * $value
    return $result
}

$value = Read-Host 'Enter a value'
$result = Get-Square $value
Write-Output "$value * $value = $result"
PS C:\Users> .\Get-Time.ps1
Enter a value: 4
4 * 4 = 4444

为什么结果4444而不是16?谢谢。

3 个答案:

答案 0 :(得分:5)

似乎$value正在返回一个字符串,并且字符串对powershell中的任何进行处理,导致 string 重复次。您需要将powershell视为function Get-Square([int]$value) { $result = $value * $value return $result } $value = Read-Host 'Enter a value' $result = Get-Square $value Write-Output "$value * $value = $result" 作为整数。试试这个:

console.log($("#2524 option:contains('dist123')").length);

答案 1 :(得分:5)

除了Alistair关于转换的回答,string返回Read-Hostint之外,您可能还想使用数学库对值进行平方。

示例代码

function Get-Square([int] $value)
{
    $result = [Math]::Pow($value,2)
    return $result
}

$value = Read-Host 'Enter a value'
$result = Get-Square $value
Write-Output "$value * $value = $result"

结果

  

输入值:4
     4 * 4 = 16

答案 2 :(得分:-1)

就像“4”*“4”,PowerShell将第二个“4”转换为int,因此返回“4444”。

4 * 4 = 16
"4" * "4" = "4444"
"4" * 4 = "4444"
4 * "4" = 16