pusofalse 发表于 2011-1-15 15:57:55

回复 5# fy1126


    貌似有些问题,当输入的数是奇数时,会发生数组错误。
而当输入偶数时,会多出一阶,如图:

pusofalse 发表于 2011-1-15 16:01:06

三位的代码很精彩,学习了。ceoguang兄,我们的思路如出一辙似的。

yangdai 发表于 2011-1-15 21:26:48

本帖最后由 yangdai 于 2011-1-16 07:12 编辑

n年前看到有人手繪矩陣圖作技術分析,我用script寫一個給他。以下代碼存成htm,用ie就可以run
,mouse點擊格子,可以看支撐與壓力


<style>
td {font-size=15px;height=27;valign=middle}
</style>
<script language=vbscript>
dim   n
dim   ft(4),c()
n=25
redim c(n,n)
ft(1)=-1: ft(2)=-1 : ft(3)=0: ft(4)=0
x=(n+1)/2 : y=x      : c(x,y)=1
v=1      : obj=1   : r=0
ft(obj)=ft(obj)+2
do whilex<>1   ory<>1
   select case   obj
            case   1
                   x=x-1
            case   2
                   y=y+1
            case   3
                   x=x+1
            case   4
                   y=y-1
   end    select
   v=v+1:r=r+1
   c(x,y)=v
   ifr>=ft(obj) then
         obj=obj+1
         ifobj=5 then obj=1
         ft(obj)=ft(obj)+2
         r=0
   end if
loop
cnt="<table border=1 cellpadding=0 cellspacing=0bordercolor=#FFFFFF" & _
      " bordercolordark=#FFFFFFbordercolorlight=#008000 id=tab>"
fory=n to 1step -1
       cnt=cnt & "<tr>"
       for x=1ton
         select   casetrue
            casex=(n+1)/2or y=(n+1)/2
                  cnt=cnt & "<td bgcolor=grey>" &c(x,y)
            casex=y      or x+y=n+1
                  cnt=cnt & "<td bgcolor=lightblue>" &c(x,y)
            caseelse
                  pass=x*10000+y
                  cnt=cnt & "<td onclick=setc(" & pass & ")>" &c(x,y)
         endselect
       next
next
cnt=cnt & "</table>"
document.write "<center>"
document.write cnt
document.write "<input type='hidden' name='px' value=-1100>"
document.write "<input type='hidden' name='py' value=-1100>"
'------------------------------------------------------------------------
sub setc(tt)
cc=tt\10000 -1
rr=tt mod 10000
rr=n-rr
ppx=cint(document.all.px.value)
ppy=cint(document.all.py.value)
fory=0 to    n-1
      for x=0ton-1
          select   casetrue
             casex=y         or (x+y)=n-1
             casex=(n-1)/2   or y=(n-1)/2
             case(y-rr=x-cc)   or (x+y=rr+cc) or x=ccor y=rr
                   document.all.tab.rows(y).cells(x).bgcolor="yellow"
             case(y-ppy=x-ppx) or (x+y=ppy+ppx)or x=ppx or y=ppy
                   document.all.tab.rows(y).cells(x).bgcolor="white"
          endselect
      next
next
document.all.tab.rows(rr).cells(cc).bgcolor="red"
document.all.px.value=cc
document.all.py.value=rr
end sub
</script>

nmgwddj 发表于 2011-1-16 01:03:13

根本看不明白。下班了 来逛逛论坛。看看源码吧。

lxz 发表于 2011-1-16 09:34:12

学习了

nxbigdaddy 发表于 2011-1-16 10:15:30

牛呀,真牛。。。可是实际有什么应用吗?

wenyida 发表于 2011-1-16 19:40:23

回复 3# ceoguang
学习

harrykc 发表于 2011-1-16 20:39:19

留名學習學習

devilma 发表于 2011-1-16 23:49:42

看看各位大师是怎么写的?

依旧漂泊 发表于 2011-1-16 23:50:08

回复看看例子{:1_413:}

nicel 发表于 2011-1-17 10:34:40

留名學習學習

masterpcc 发表于 2011-1-17 11:00:39

学习学习、谢谢分享!

menfan1 发表于 2011-1-17 11:07:13

看看啥内容哈

ashfinal 发表于 2011-1-17 20:47:52

看一次啊 先不研究了

ashfinal 发表于 2011-1-17 20:58:03

比较强大 可惜看不懂~
页: 1 [2] 3 4
查看完整版本: AU3编程 输出螺旋方阵