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

例えばこんなバッチファイルがあるとします。

@echo off

setlocal
set /a s = 0
for /L %%i in (1, 1, 100000) do (
    set /a s += 1
)
echo %s%

forループが時間がかかるので、この処理を行っている隙に

echo %s%

の部分を

echo %s%a

と変えて保存すると、

100000a

と表示されます。一々ファイルを読んでいるんですね。

    set /a s += 1



    set /a s += 2

と変えても答えは変わりません。forループ内は一つのコマンドとみなされてループが1回回るごとにファイルから読むというようなことはないようです。だからforループは速いんですね。