我有8个数字1、2、3、4、5、6、7、8
现在有一个二维数组a[0..1][0..3]。
我想通过程序,把上述的8个数字放到数组里面。规则是
a[0][0]:=1;a[0][1]:=2……最后的效果:1 2 3 4
            5 6 7 8我的算法如下:
var
  i,j,k:integer;
begin
  for k:=1 to 8 do
  begin
    i:=k div 4;
    j:=(k mod 4)-1;
    a[i][j]:=k;
  end;//for kend;这个算法有问题,如果是k=4,i=1,j=-1,这样4就存放到了a[1][-1]:=4;出错了。而我希望a[0][3]:=4;
后来,我就加了语句,判断i和j的值,如果j:=-1就让i:=i-1;j:=3,var
  i,j,k:integer;
begin
  for k:=1 to 8 do
  begin
    i:=k div 4;
    j:=(k mod 4)-1;
    case j of
    -1:begin
         i:=i-1;
         j:=3;  
       end;
    end;
    a[i][j]:=k;
  end;//for kend;好土啊。谁有好的算法。小弟实在是笨的不行了。