矩阵程序

来源:百度知道 编辑:UC知道 时间:2024/05/18 17:09:31
输入一个数字n,得到n*n的矩阵。要求得到1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
这类形式。

家里电脑上没有C,pascal,vb的编译器,用PHP写了一个
$n=5;
$i=1;
$j=1;
$k=1;
$arr = array(1=>array(1=>0,0,0,0,0),
array(1=>0,0,0,0,0),
array(1=>0,0,0,0,0),
array(1=>0,0,0,0,0),
array(1=>0,0,0,0,0));
while ($k<=$n*$n)//变量k控制填充数字
{
while (($j<=$n)&&($arr[$i][$j]==0))//第一种条件
{
$arr[$i][$j] = $k;
$k++;
$j++;
}
$j--;
$i++;
while (($i<=$n)&&($arr[$i][$j]==0))//第二种条件
{
$arr[$i][$j] = $k;
$k++;
$i++;
}
$i--;
$j--;
while (($j>=1)&&($arr[$i][$j]==0))//第三种条件
{
$arr[$i][$j] = $k;
$k++;
$j--;
}
$j++;
$i--;
while (($i>=1)&&($arr[$i][$j]==0))//第四种条件
{
$arr[$i][$j] = $k;
$k++;
$i--;
}
$i++;
$j++;
}
for ($i=1; $i<=$n; $i++)
{
for ($j=1; $j<=$n; $j++)