PowerShell函数查找数字的平方:

gor*_*ung 5 powershell function

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

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

$value = Read-Host 'Enter a value'
$result = Get-Square $value
Write-Output "$value * $value = $result"
Run Code Online (Sandbox Code Playgroud)
PS C:\Users> .\Get-Time.ps1
Enter a value: 4
4 * 4 = 4444
Run Code Online (Sandbox Code Playgroud)

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

Ala*_*own 5

它似乎Read-Host返回一个字符串,并且字符串乘以powershell中的任何,导致字符串重复时间.您需要将powershell $value视为整数.试试这个:

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"
Run Code Online (Sandbox Code Playgroud)


Tra*_*z13 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"
Run Code Online (Sandbox Code Playgroud)

结果

输入值:4
4*4 = 16