[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

使用对角分割解螺旋方阵:
  1. @echo off
  2. :s
  3. setlocal enabledelayedexpansion&cls
  4. set/p n=输入阶数:
  5. if %n% gtr 46340 goto:s
  6. set/a k=n*n&set k= !k!
  7. for /l %%a in (1,1,11) do if not "!k:~%%a,1!"=="" set q=%%a&set "s=!s! "
  8. for /l %%a in (1,1,%n%) do (
  9.         for /l %%b in (1,1,%n%) do (
  10.                 set/a k=n+1-%%a
  11.                 if %%b geq %%a if %%b leq !k! set/a "p=4*(n-%%a)*%%a-4*n+7*%%a+%%b-3"
  12.                 if %%b leq %%a if %%b gtr !k! set/a "p=4*(n-%%a)*%%a-2*n+5*%%a-%%b-1"
  13.                 if %%b gtr %%a if %%b gtr !k! set/a "p=4*(n-%%b)*%%b-2*n+%%a+3*%%b-1"
  14.                 if %%b lss %%a if %%b leq !k! set/a "p=4*(n-%%b)*%%b-%%a+%%b+1"
  15.                 set p=%s%!p!&set/p"=!p:~-%q%! "<nul
  16.         )
  17.         echo;
  18. )
  19. pause&endlocal&goto:s
复制代码
JS版:
  1. <script>
  2. hy(20);
  3. function hy( n)
  4. { var i,j;
  5. document.write("<body bgcolor=#008000><center><table border=1 bgcolor=#B0E2FF bordercolor=#fff000> ");
  6. for(i=1;i<=n;i++){document.write("<tr>");
  7. for(j=1;j<=n;j++){
  8. var Han=4*(n-i)*i-4*n+7*i+j-3;
  9. var Ye=4*(n-j)*j-2*n+i+3*j-1;
  10. var Gu=4*(n-i)*i-2*n+5*i-j-1;
  11. var Xing=4*(n-j)*j+-i+j+1;
  12. document.write("<td>"+((i<=j&&i+j<=n+1)?Han:(i<j&&i+j>n+1)?Ye:(i>=j&&i+j>n+1)?Gu:Xing)+"</td>");} document.write("</tr>");}
  13. document.write("</table> ");
  14. }
  15. </script>
复制代码

[ 本帖最后由 hanyeguxing 于 2011-2-8 11:15 编辑 ]
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
2

评分人数

    • zm900612: 厉害,学习下技术 + 1
    • stance: 哇塞,好强壮哦。技术 + 1
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

返回列表