Стол заказов Backtracking - Informatica - ReferatMD - Eseu,Plan de afacere,compuneri,referat,etc.
Backtracking
Молот богов
0
ком.
Просмотров: 148
Добавил: Colea
Рейтинг
5
/ 5
Всего голосов: 1


    1.Sa se plaseze pe o tabla de sah 8 dame astfel incat sa nu se atace reciproc.Sa se genereze toate solutiile.

    Comentariu:

    Pe fiecare linie trebuie sa stea o singura dama.Procedura pune_dama are ca parametru linia pe care trebuie sa se aseze o dama astfel incat san u fie atacata de damele pozitionate anterior.Pentru fiecare pozitie corecta gasita,procedura se autoapeleaza pentru linia urmatoare.



    program dame;

    const nmax=20;

    var n,i,j:byte;

    a:array[1..nmax] of 0..nmax;

    nrs:byte;

    procedure afis;

    var i,j:byte;

    begin

    for i:=1 to n do begin

    for j:=1 to n do

    if a[i]=j then write(‘* ‘);

    else write(‘0 ‘);

    writeln

    end;

    nrs:=nrs+1;

    end;

    procedure pune_dama(x:byte);

    var I,j,:byte;v:boolean;

    begin

    if x>n then afis else for i:=1 to n do

    begin

    v:=true;

    for j:=1 to x-1 do

    if a[j]=I or abs(j-x)=abs(a[j]-i) then

    v:=false;

    if v then begin

    a[x]:=I;

    pune_dama(x+1);

    end;

    end;

    end;

    begin

    write(‘introduceti dimensiunea tablei de sah:’);readln(n);

    nrs:=0;

    pune_dama(1);

    writeln(‘numarul de solutii :’,nrs);

    end.

    Молот богов
    Молот богов
    Комментарии:

    avatar
    Retete culinare

    ТОП материалы
    Мы на Одноклассниках

    наверх