如何在数学上找到下面最近的奇数月份

How to mathematically find the nearest odd month below

PowerShell returns 当前月份:

(Get-Date).Month

但我需要知道下面最近的奇数月份。

如果每个月都由一年内的匹配数字表示:

 1 →  1
 2 →  1
 3 →  3
 4 →  3
 5 →  5
 6 →  5
 7 →  7
 8 →  7
 9 →  9
10 →  9
11 → 11
12 → 11

检查是否可以被 2 整除:

$m = (Get-Date).Month
if ($m % 2 -eq 0) { 
  $m -= 1 
} 

Write-Host $m

证明:

1..12 | % { Write-Host -nonewline "$_ ==> " ; if ($_ % 2 -eq 0 ) { $_ -= 1} ; Write-Host $_ }