program ferz;
uses crt;
var s,i:integer;
a:array[ 1..8 ] of boolean;
b:array[ 2..16 ] of boolean;
c:array[ -7..7 ] of boolean;
x:array[ 1..8 ]of integer;
procedure print;
var k:integer;
begin
s:=s+1;
write('Решение номер ',s:2,' : ');
for k:=1 to 8 do write(x [ k ] :4);
writeln;
write('Press <enter>');
readln;
end;{of print}
procedure try(i:integer);
var j:integer;
begin
for j:=1 to 8 do
if a[ j ]and b[ i+j ]and c[ i-j ] then
begin
x[ i ]:=j;
a[ j ]:=false;b[ i + j ]:=false;c[ i - j ]:=false;
if i<8 then try(i+1) else print;
a[ j ]:=true;b [ i + j ]:=true;c [ i - j ]:=true;
end;
end;{of try}
begin{of main}
clrscr;
for i:=1 to 8 do a [ i ]:=true;
for i:=2 to 16 do b [ i ]:=true;
for i:=-7 to 7 do c [ i ]:=true;
s:=0;
try(1)
end.
Другие языки программирования и технологии
Прошу помощи в Turbo pASCAL.
(abs(x-xF)=abs(y-yF))or(x=xF)or(y=yF) - вот условие проверки рубит ли ферзь с координатами клетки (xF;yF), клетку с координатами (x,y) Думаю разберёшся в остальном.
вот те алгорим
1) в случайном порядке расставляются ферци на шахматной доске (массиве 8:8)
2)(берем 1 ферзя) порверяем все "точки" где он может срубить
3)если в одной из этих точек есть фигура (другой ферзь) то сдвигаем на 1 клетку
4)если нет, то берем следущего верзя ...
2)(берем 2 ферзя) порверяем все "точки" где он может срубить
3)если в одной из этих точек есть фигура (другой ферзь) то сдвигаем на 1 клетку
....
2)(берем 8 ферзя) порверяем все "точки" где он может срубить
3)если в одной из этих точек есть фигура (другой ферзь) то сдвигаем на 1 клетку
1) в случайном порядке расставляются ферци на шахматной доске (массиве 8:8)
2)(берем 1 ферзя) порверяем все "точки" где он может срубить
3)если в одной из этих точек есть фигура (другой ферзь) то сдвигаем на 1 клетку
4)если нет, то берем следущего верзя ...
2)(берем 2 ферзя) порверяем все "точки" где он может срубить
3)если в одной из этих точек есть фигура (другой ферзь) то сдвигаем на 1 клетку
....
2)(берем 8 ферзя) порверяем все "точки" где он может срубить
3)если в одной из этих точек есть фигура (другой ферзь) то сдвигаем на 1 клетку
Ой жесткачь этот турбо паскаль) ) Придерается к каждой фигне) ) Я с ним не работаю еще с 2003. Поэтому не помню почти
Похожие вопросы
- Люди помогите пожалуйста....Кто понимает TURBO PASCAL
- Помогите сделать задания по програмированию(двумерные массивы)Turbo Pascal
- Как вставить текст в Turbo Pascal 7.1???
- Turbo Pascal
- Объясните смысл прогаммы в Turbo Pascal
- Я в коледже Turbo Pascal прохожу. Скажите он вообще где нибудь нужен? Может Turbo Pascal морально устарел?
- DOS OC или создание ОС на Turbo Pascal
- turbo pascal 7.0 Определить принадлежность к области точек с заданными координатами!!!
- Помогите с Turbo Pascal
- Как задать разрешение окна в графическом режиме Turbo Pascal??? Alt-Enter не предлагать!!