49 lines
722 B
Text
49 lines
722 B
Text
subr show_sol
|
|
print "Solution " & n_sol
|
|
print ""
|
|
for i = 1 to n
|
|
write " "
|
|
for j = 1 to n
|
|
if j = x[i]
|
|
write "Q "
|
|
else
|
|
write ". "
|
|
.
|
|
.
|
|
print ""
|
|
.
|
|
print ""
|
|
.
|
|
subr test
|
|
ok = 1
|
|
for i = 1 to y - 1
|
|
if x[y] = x[i] or abs (x[i] - x[y]) = abs (y - i)
|
|
ok = 0
|
|
.
|
|
.
|
|
.
|
|
n = 8
|
|
len x[] n
|
|
y = 1
|
|
x[1] = 1
|
|
while y >= 1
|
|
test
|
|
if ok = 1 and y + 1 <= n
|
|
y += 1
|
|
x[y] = 1
|
|
else
|
|
if ok = 1
|
|
n_sol += 1
|
|
if n_sol <= 1
|
|
show_sol
|
|
.
|
|
.
|
|
while y >= 1 and x[y] = n
|
|
y -= 1
|
|
.
|
|
if y >= 1
|
|
x[y] += 1
|
|
.
|
|
.
|
|
.
|
|
print n_sol & " solutions"
|