按照上图的规律,写个小java程序。麻烦各位给点思路!
第二张图数字明显有问题,漏了数字14,不知道是哪个规律。
对对,谢谢提醒,能给点提示?有代码更好?
@yq_lookup:
1、数字N=5
2、数字M=Power(N)=25
3、定义5*5格子或者二维数组(5,5)
4、I=1, J=1, K=1, iX, iY
5、While true
Array(i,j)=k
IF ArrayFull then exit while
K+=1
Direction(I, J, Array, iX, iY)
I+=iX
J+=iY
end while
6、重点是函数Direction,iX, iY要传引用而不是值。
7、先向右方向走,iX=1, iY=0
8、走到无路可走时,iX=0, iY(判断一下,+1 or -1),无路包括数组元素已填充的情况。
9、走到无路可走时,iY=0, iX (判断一下,+1 or -1),无路包括数组元素已填充的情况。
10、循环8、9两步
这样就行了。
输入的值代表行数和列数,然后可以构建二维数组。然后按照规则循环了。
14哪去了?