Data update
This commit is contained in:
parent
5150844a7d
commit
4bb20c9b71
7735 changed files with 38060 additions and 199180 deletions
|
|
@ -1,131 +0,0 @@
|
|||
function Get-NumberName
|
||||
{
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Spells out a number in English.
|
||||
.DESCRIPTION
|
||||
Spells out a number in English in the range of 0 to 999,999,999.
|
||||
.NOTES
|
||||
The code for this function was copied (almost word for word) from the C#
|
||||
example on this page to show how similar Powershell is to C#.
|
||||
.PARAMETER Number
|
||||
One or more integers in the range of 0 to 999,999,999.
|
||||
.EXAMPLE
|
||||
Get-NumberName -Number 666
|
||||
.EXAMPLE
|
||||
Get-NumberName 1, 234, 31337, 987654321
|
||||
.EXAMPLE
|
||||
1, 234, 31337, 987654321 | Get-NumberName
|
||||
#>
|
||||
[CmdletBinding()]
|
||||
[OutputType([string])]
|
||||
Param
|
||||
(
|
||||
[Parameter(Mandatory=$true, ValueFromPipeline=$true)]
|
||||
[ValidateRange(0,999999999)]
|
||||
[int[]]
|
||||
$Number
|
||||
)
|
||||
|
||||
Begin
|
||||
{
|
||||
[string[]]$incrementsOfOne = "zero", "one", "two", "three", "four",
|
||||
"five", "six", "seven", "eight", "nine",
|
||||
"ten", "eleven", "twelve", "thirteen", "fourteen",
|
||||
"fifteen", "sixteen", "seventeen", "eighteen", "nineteen"
|
||||
|
||||
[string[]]$incrementsOfTen = "", "", "twenty", "thirty", "fourty",
|
||||
"fifty", "sixty", "seventy", "eighty", "ninety"
|
||||
|
||||
[string]$millionName = "million"
|
||||
[string]$thousandName = "thousand"
|
||||
[string]$hundredName = "hundred"
|
||||
[string]$andName = "and"
|
||||
|
||||
function GetName([int]$i)
|
||||
{
|
||||
[string]$output = ""
|
||||
|
||||
if ($i -ge 1000000)
|
||||
{
|
||||
$remainder = $null
|
||||
$output += (ParseTriplet ([Math]::DivRem($i,1000000,[ref]$remainder))) + " " + $millionName
|
||||
$i = $remainder
|
||||
|
||||
if ($i -eq 0) { return $output }
|
||||
}
|
||||
|
||||
if ($i -ge 1000)
|
||||
{
|
||||
if ($output.Length -gt 0)
|
||||
{
|
||||
$output += ", "
|
||||
}
|
||||
|
||||
$remainder = $null
|
||||
$output += (ParseTriplet ([Math]::DivRem($i,1000,[ref]$remainder))) + " " + $thousandName
|
||||
$i = $remainder
|
||||
|
||||
if ($i -eq 0) { return $output }
|
||||
}
|
||||
|
||||
if ($output.Length -gt 0)
|
||||
{
|
||||
$output += ", "
|
||||
}
|
||||
|
||||
$output += (ParseTriplet $i)
|
||||
|
||||
return $output
|
||||
}
|
||||
|
||||
function ParseTriplet([int]$i)
|
||||
{
|
||||
[string]$output = ""
|
||||
|
||||
if ($i -ge 100)
|
||||
{
|
||||
$remainder = $null
|
||||
$output += $incrementsOfOne[([Math]::DivRem($i,100,[ref]$remainder))] + " " + $hundredName
|
||||
$i = $remainder
|
||||
|
||||
if ($i -eq 0) { return $output }
|
||||
}
|
||||
|
||||
if ($output.Length -gt 0)
|
||||
{
|
||||
$output += " " + $andName + " "
|
||||
}
|
||||
|
||||
if ($i -ge 20)
|
||||
{
|
||||
$remainder = $null
|
||||
$output += $incrementsOfTen[([Math]::DivRem($i,10,[ref]$remainder))]
|
||||
$i = $remainder
|
||||
|
||||
if ($i -eq 0) { return $output }
|
||||
}
|
||||
|
||||
if ($output.Length -gt 0)
|
||||
{
|
||||
$output += " "
|
||||
}
|
||||
|
||||
$output += $incrementsOfOne[$i]
|
||||
|
||||
return $output
|
||||
}
|
||||
}
|
||||
Process
|
||||
{
|
||||
foreach ($n in $Number)
|
||||
{
|
||||
[PSCustomObject]@{
|
||||
Number = $n
|
||||
Name = GetName $n
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
1, 234, 31337, 987654321 | Get-NumberName
|
||||
Loading…
Add table
Add a link
Reference in a new issue