Program Task_8_31;
Const Nmax = 8;
Type TArr = Array ['a'..'h',1..Nmax] Of Integer;
Var A : TArr;
qy, ry : Integer;
qx, rx : Char;
Procedure PrintBoard;
Var i : Char;
j :Integer;
Begin
For i := 'a' To 'h' Do Begin
For j := 1 To Nmax Do
Write(A[i, j], ' ');
WriteLn;
End;
End;
Procedure FillRook(Var A : TArr; Const x : Char;
Const y:integer);
Var i : Char;
j :Integer;
Begin
For i := 'a' To 'h' Do A[i, y]:= 1;
For j := 1 To Nmax Do A[x, j] := 1;
End;
Procedure FillQueen(Var A : TArr; Const x : Char; Const y:integer);
Var i : Char;
j,dgl,dg2:Integer;
Begin
dgl:=Ord(x) - Ord('a') + y;
dg2 := Ord(x) - Ord('a') - y;
For i := 'a' To 'h' Do
For j := 1 To Nmax Do
If (i = x) Or (j = y) Or
(Ord(i) - Ord('a') + j = dgl) Or
(Ord(i) - Ord('a') - j = dg2)
Then A[i, j] := 1;
End;
Begin
ReadLn(qx,qy);
ReadLn(rx,ry);
FillChar(A,SizeOf(A),0);
FillQueen(A,qx,qy);
FillRook(A,rx,ry);
writeln('Board:');
PrintBoard;
END.