pascal八皇后问题 烦指出错误在哪

programproject1;vara:array[1..8,1..8]oflongint;b:array[1..8,1..8]oflongint;w,y:longin... program project1;
var a:array[1..8,1..8] of longint;b:array[1..8,1..8] of longint;
w,y:longint;
procedure hui(i:longint);
var t,m,n:longint;
begin
if i>8 then
begin
for i:=1 to 8 do
begin
for t:=1 to 8 do
write(a[i,t]);
writeln;
end;
writeln;
write(' ');
end
else
begin
for t:=1 to 8 do
begin
if b[i,t]=0 then
begin
a[i,t]:=i;
for m:=1 to 8 do
for n:=1 to 8 do
begin
if (m+n=i+t) or (m-n=i-t) or (n=t) or (m=i) then
b[m,n]:=b[m,n]+1;
end;
end ;
hui(i+1);
a[i,t]:=0;
for m:=1 to 8 do
for n:=1 to 8 do
if (m+n=i+t) or (m-n=i-t) or (n=t) or (m=i) then
b[m,n]:=b[m,n]-1;
end;
end;
end;
begin
for w:= 1 to 8 do
for y:=1 to 8 do
begin
a[w,y]:=0;
b[w,y]:=0;
end;
hui(1);
readln;
readln;
end.
展开
 我来答
gcbjoy
2015-04-18 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:92%
帮助的人:2086万
展开全部
为什么要用整数数组呢?用布尔数组不是更方便吗 !
数组本身应作为递归过程的参数一步步地影响到后面的结果,递归过程中的数组不能采用全局数组。
追问
为什么用这个不行 求解答
追答
用全局数组时,不同的可能之间是在互相影响,不能做到隔离 !!!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式