Bài toán kho an toàn

Chia sẻ bởi Thuhuyen Cmx | Ngày 26/04/2019 | 41

Chia sẻ tài liệu: Bài toán kho an toàn thuộc Tin học 11

Nội dung tài liệu:

một nhà máy sản xuất vũ khí có nhiều kho hàng có lính canh gác. Các kho hàn và lính canh được thẻ hiện trên ma trận m hàng n cột. Kho hàng là `kho an toàn` nếu xung quanh kho toàn là lính canh. lập trình và đưa ra vị trí kho an toàn. Dữ liệu vào: tệp ANTOAN.INp; - dòng đầu tiên ghi 2 số m, n nguyên(m,n<=100); - m dòng tiếp theo mỗi dòng có n số 0 hoặc 1 thể hiện kho hàng và lính canh (kho hàng:=0; lính canh:=1); - các số trên cùng 1 dòng cách nhau 1 dấu cách. kết quả: tệp ANYOAN.OUT; - Nếu có kho an toàn thì mỗi dòng ghi vị trí 1 kho - sau khi ghi hết vị trí các kho an toàn thì ghi có bao nhiêu kho an toàn ở dòng cuối cùng. - mỗi số trên cùng 1 hang ghi cách nhau 1 dấu cách. - không có kho an toàn thì ghi -1. VD: antoan.inp: 4 5 antoan.out: 2 2 1 1 1 0 1 3 4 1 0 1 1 1 2 1 1 1 0 1 0 0 1 1 1
_________
var f:text;
a:array[1..100,1..100] of boolean;
i,j,m,n:byte;
k:integer;
procedure Enter;
var f:text;
i,j:byte;
c:byte;
begin
assign(f,`antoan.inp`);
reset(f);
readln(f,m,n);
for i:=1 to m do
for j:=1 to n do
begin
read(f,c);
if c=1 then a[i,j]:=true else a[i,j]:=false;
end;
close(f);
end;
begin
k:=0;
Enter;
assign(f,`antoan.out`);
rewrite(f);
for i:=2 to m-1 do
for j:=2 to n-1 do
if (not a[i,j]) and a[i+1,j] and a[i-1,j] and a[i+1,j-1] and
a[i+1,j+1] and a[i-1,j-1] and a[i-1,j+1] and a[i,j-1] and
a[i,j+1] then
begin
writeln(f,i,` `,j);
k:=k+1;
end;
if k=0 then k:=-1;
write(f,k);
close(f);
readln
end.

* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Thuhuyen Cmx
Dung lượng: | Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)