21 lines
456 B
Plaintext
21 lines
456 B
Plaintext
function Get-HailStone {
|
|
param($n)
|
|
|
|
switch($n) {
|
|
1 {$n;return}
|
|
{$n % 2 -eq 0} {$n; return Get-Hailstone ($n = $n / 2)}
|
|
{$n % 2 -ne 0} {$n; return Get-Hailstone ($n = ($n * 3) +1)}
|
|
}
|
|
}
|
|
|
|
function Get-HailStoneBelowLimit {
|
|
param($UpperLimit)
|
|
|
|
for ($i = 1; $i -lt $UpperLimit; $i++) {
|
|
[pscustomobject]@{
|
|
'Number' = $i
|
|
'Count' = (Get-HailStone $i).count
|
|
}
|
|
}
|
|
}
|