标题:[分享] 汉诺塔(递归) 批处理版
只看楼主
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
结帖率:100%
 问题点数:0 回复次数:1 
[分享] 汉诺塔(递归) 批处理版
这两天在学批处理,发一个批处理版的汉诺塔分享下。
复制分隔线下的代码保存为.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
搜索更多相关主题的帖子: 汉诺塔 批处理 递归 分享 
2008-05-16 02:52
p1s
Rank: 4
等 级:贵宾
威 望:10
帖 子:454
专家分:3
注 册:2005-11-4
得分:0 
很有趣,用批处理写汉诺塔。估计现在的新人很少会写批处理了,DOS时代的东西。
2008-05-16 15:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-214546-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013085 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved