バッチファイルでProject Euler(7)

Problem 2は簡単です。フィボナッチ数列再帰で生成できます。

@echo off

set /a N = 4000000
call :Fibonacci 0 1
echo %ERRORLEVEL%
exit /b 0

:Fibonacci
    setlocal
    set /a f = %1 + %2
    if %f% GTR %N% exit /b 0
    call :Fibonacci %2 %f%
    set /a r = %f% %% 2
    if %r% == 0 (
        set /a s = %f% + %ERRORLEVEL%
    ) else (
        set /a s = %ERRORLEVEL%
    )
    exit /b %s%

ただ、関数型のようにはきれいに書けません。フィボナッチ数列と和を取る部分などを分離できません。ものすごくがんばればできるかもしれませんが。