最新ページ

2007-08-24 Fri

PowerShell でフィボナッチ2 [PowerShell]

function fib{param($x)
    if($global:m.$x -isnot [int]){
        if($x -le 1){
            $global:m += @{$x = 1}
         }else{
            $global:m += @{$x = (fib ($x - 1)) + (fib ($x - 2))}
         }
     }
     return $global:m.$x
}

メモ化してみた。
ハッシュ $m を作成してから、実行する。

$m = @{}
fib 40
165580141

fib 47 以上だとエラーが出る。

2007-08-23 Thu

関数を定義する関数 [PowerShell]

関数内で global: をつけて関数を定義する。

2007-08-23 Thu

PowerShell でフィボナッチ [PowerShell]

function fib {
    param([int]$x)
    if($x -le 1)
    {
        return 1
    }else{
        return (fib ($x - 1)) + (fib ($x - 2))
    }
}

fib 30 を呼び出したら戻ってこない…35分かかった。

2007-08-23 Thu

PowerShellが楽しい。 [PowerShell]

PowerShell をインストールしました。
かなり楽しい。
GUI より CUI の方がコンピュータを操っている感じが強い。

PowerShell をインストールした時点では、スクリプトが動作しない。

set-executionpolicy remotesigned

このコマンドを入れるとスクリプトを動かせる。

プロファイルを作成していないと、
エイリアスや関数と変数が保存されない。

new-item -path $profile -itemtype file -force

このコマンドでプロファイルが作成される。

function で定義する関数が今までのバッチファイルのようなもの。

参考
Windows PowerShell でのスクリプティング