N-queens problem: Difference between revisions

Content added Content deleted
m (fix markup)
Line 4,664: Line 4,664:
=={{header|EasyLang}}==
=={{header|EasyLang}}==


<syntaxhighlight lang="easylang">subr show_sol
<syntaxhighlight lang="easylang">
subr show_sol
print "Solution " & n_sol
print "Solution " & n_sol
print ""
print ""
for i range n
for i = 1 to n
write " "
write " "
for j range n
for j = 1 to n
if j = x[i]
if j = x[i]
write "Q "
write "Q "
Line 4,682: Line 4,683:
subr test
subr test
ok = 1
ok = 1
for i range y
for i = 1 to y - 1
if x[y] = x[i] or abs (x[i] - x[y]) = abs (y - i)
if x[y] = x[i] or abs (x[i] - x[y]) = abs (y - i)
ok = 0
ok = 0
Line 4,690: Line 4,691:
n = 8
n = 8
len x[] n
len x[] n
y = 0
y = 1
x[0] = 0
x[1] = 1
while y >= 0
while y >= 1
call test
call test
if ok = 1 and y + 1 <> n
if ok = 1 and y + 1 <= n
y += 1
y += 1
x[y] = 0
x[y] = 1
else
else
if ok = 1
if ok = 1
Line 4,704: Line 4,705:
.
.
.
.
while y >= 0 and x[y] = n - 1
while y >= 1 and x[y] = n
y -= 1
y -= 1
.
.
if y >= 0
if y >= 1
x[y] += 1
x[y] += 1
.
.
.
.
.
.
print n_sol & " solutions"</syntaxhighlight>
print n_sol & " solutions"
</syntaxhighlight>
{{out}}
{{out}}
<pre>Solution 1
<pre>Solution 1