じんぐるさん楽しそうですね。
課題をPowerShellでやってみました。と言っても、要はFizzBuzzなので前回のを使っただけで……すいません。許してください。
Takae Sakushima (@RamuMystery) May 11, 2013
PowerShellで書くと
まぁ、ほんと前回のにちょちょいと足しておわりです。(所要時間10秒)
1..100 | % {$x = @("北陸")[$_ % 2] + @("コミュニティ")[$_ % 3] + @("最高")[$_ % 5]; ($x,$_)[!$x]}
これでいいですか。
PS> 1..100 | % {$x = @("北陸")[$_ % 2] + @("コミュニティ")[$_ % 3] + @("最高")[$_ % 5]; ($x,$_)[!$x]} 1 北陸 コミュニティ 北陸 最高 北陸コミュニティ 7 北陸 コミュニティ 北陸最高 11 北陸コミュニティ 13 北陸 コミュニティ最高 北陸 17 北陸コミュニティ 19 北陸最高 コミュニティ 北陸 23 北陸コミュニティ 最高 北陸 コミュニティ 北陸 29 北陸コミュニティ最高 31 北陸 コミュニティ 北陸 最高 北陸コミュニティ 37 北陸 コミュニティ 北陸最高 41 北陸コミュニティ 43 北陸 コミュニティ最高 北陸 47 北陸コミュニティ 49 北陸最高 コミュニティ 北陸 53 北陸コミュニティ 最高 北陸 コミュニティ 北陸 59 北陸コミュニティ最高 61 北陸 コミュニティ 北陸 最高 北陸コミュニティ 67 北陸 コミュニティ 北陸最高 71 北陸コミュニティ 73 北陸 コミュニティ最高 北陸 77 北陸コミュニティ 79 北陸最高 コミュニティ 北陸 83 北陸コミュニティ 最高 北陸 コミュニティ 北陸 89 北陸コミュニティ最高 91 北陸 コミュニティ 北陸 最高 北陸コミュニティ 97 北陸 コミュニティ 北陸最高
functionもどうぞ。
function Get-北陸コミュニティ最高{ [CmdletBinding()] param( [int[]]$seq ) $seq ` | ForEach-Object{ New-Object PSObject -Property @{ numFizzBuzz = ($_ | ForEach-Object {"$_" + @("北陸")[$_ % 2] + @("コミュニティ")[$_ % 3] + @("最高")[$_ % 5]}) oneFizzBuzz = ($_ | ForEach-Object {((@("北陸")[$_ % 2] + @("コミュニティ")[$_ % 3] + @("最高")[$_ % 5]),$_)[!((@("北陸")[$_ % 2] + @("コミュニティ")[$_ % 3] + @("最高")[$_ % 5]))]}) varFizzBuzz = ($_ | ForEach-Object {$x = @("北陸")[$_ % 2] + @("コミュニティ")[$_ % 3] + @("最高")[$_ % 5]; ($x,$_)[!$x]}) } } } Get-北陸コミュニティ最高 -seq (1..100) | Format-Table -AutoSize Get-北陸コミュニティ最高 -seq (1..10000) | Format-Table -AutoSize Get-北陸コミュニティ最高 -seq (1..100) | Format-List
実行速度は遅い。
PS> Measure-Command{ 1..100 | % {$x = @("北陸")[$_ % 2] + @("コミュニティ")[$_ % 3] + @("最高")[$_ % 5]; ($x,$_)[!$x]}} TotalMilliseconds : 17.2722
ふぇぇ………