изоморфны. Следующие


изоморфны. Следующие рисунки иллюстрируют сказанное и поясняют ввод используемых структур данных. Структуры данных. Up:array[2..16] of boolean;{признак занятости диагоналей первого типа} Down:array[-7..7] of boolean;{признак занятости диагоналей второго типа} Vr:array[1..8] of boolean;{признак занятости вертикали} X:array[1..8] of integer;{номер вертикали, на которой стоит ферзь на каждой горизонтали} Далее идет объяснение “кирпичиков”, из которых “складывается” решение (технология “снизу вверх”). procedure Hod(i,j:integer); {сделать ход} begin X[i]:=j;Vr[j]:=false;Up[i+j]:=false;Down[i-j]:=false; end; procedure O_hod(i,j:integer);{отменить ход} begin Vr[j]:=true;Up[i+j]:=true;Down[i-j]:=true; end; function D_hod(i,j:integer); {проверка допустимости хода в позицию (i,j)} begin D_hod:=Vr[j]andUp[i+j]andDown[i-j]; end; Основная процедура поиска одного варианта расстановки ферзей имеет вид: procedure Solve(i:integer;var q:boolean); var
Индекс
Элементарные функции    Линейные уравнения    Нелинейные уравнения    Случайные числа


Hosted by uCoz