CONST fi='covua.inp';fo='covua.out'; var ch : char; x1, y1, x2, y2, i, j, tot,d : longint; a: array[-2..10,-2..10] of longint; h:array[1..8] of longint = (-2,-1,1,2,2,1,-1,-2); c:array[1..8] of longint = (1,2,2,1,-1,-2,-2,-1); procedure nhap; // nhap input va chuyen he toa do begin read(ch); y1 := ord(ch) - 96; readln(x1); x1:=9-x1; read(ch); y2 := ord(ch) - 96; readln(x2); x2:=9-x2; end; procedure khoi_tao; // khoi tao bang a chua co o nao bi khong che var i,j:longint; begin for i:=1 to 8 do for j:=1 to 8 do a[i,j]:=0; a[x1,y1]:=1; a[x2,y2]:=1; end; procedure quan_xe_an; // danh dau nhung o bi quan xe (x1, y1) khong che begin for i:=1 to 8 do a[x1,i]:=1; //khong che cac o hang x1 for i:=1 to 8 do a[i,y1]:=1; //khong che cac o cot y1 end; procedure quan_ma_an; // danh dau 8 o bi quan ma (x2, y2) khong che var i :longint ; begin for i:=1 to 8 do a[x2+h[i],y2+c[i]]:=1; end; procedure quan_ma2; //danh dau 8 o khi dat quan ma thu ba vao se an quan xe var i :longint ; begin for i:=1 to 8 do a[x1+h[i],y1+c[i]]:=1; end; procedure tinh_kq; // dem lai cac o a[i,j]=0 la cac o co the dat duoc var i,j:longint; begin d:=0; for i:=1 to 8 do for j:=1 to 8 do if a[i,j]=0 then inc(d); writeln(d); end; begin assign(input,fi);reset(input); assign(output,fo);rewrite(output); nhap; khoi_tao; quan_xe_an; quan_ma_an; quan_ma2; tinh_kq; close(input);close(output); end.
* Chuyên dạy lập trình ONLINE cho học sinh THCS, THPT *.
Mọi giao lưu, trao đổi, xin liên hệ: Lê Quang Vinh - zalo: 037.803.8755.
Page: Lớp học Code Sky
Group FB1: Ôn thi HSG9 - THTB - TS10 chuyên tin
Group FB2: Học Scratch - Ôn thi Tin học trẻ bảng A
Thứ Hai, 9 tháng 5, 2022
COVUA PASCAL
Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.