当前位置:DOS资源站资料中心批处理教程 → 批处理计算汉诺塔

批处理计算汉诺塔

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2008-5-17 23:29:33

@echo off
title 汉诺塔
Call :main
pause
exit %errorlevel%

:main
        set /p n="输入汉诺塔层数n, (n为正整数): "&set /a n+=0
set n=%errorlevel%
    set /a errorlevel=0
    call :hannoi %n% a b c
    echo.
    echo %n%层汉诺塔最少需移动%errorlevel%次!
    echo.
    exit /b %n%

:hannoi
    set i=%1
    set /a i=%1-1
    if %1==0 (goto :EOF) else (
        call :hannoi %i% %2 %4 %3
        echo %2-^>%4
        set /a errorlevel+=1
        call :hannoi %i% %3 %2 %4
    )
    goto :EOF