[分享] 汉诺塔(递归) 批处理版
这两天在学批处理,发一个批处理版的汉诺塔分享下。复制分隔线下的代码保存为.bat文件
----------------------------------------------------------
@echo off
title 汉诺塔
Call :main
pause
exit %errorlevel%
:main
call :about
set /p n="输入汉诺塔层数n, (n为正整数): "
set /a n+=0
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
:about
echo ┏ About ━━━━━━━━━━━┓
echo ┃ 文件: Hannoi(递归).bat ┃
echo ┃ 名称: 汉诺塔(Hannoi) ┃
echo ┃ 作者: 燮冥 -- cosdos ┃
echo ┃ 时间: 2008-5-16 1:23 ┃
echo ┗━━━━━━━━━━━━━━━┛
echo.
goto :EOF