Дан алгоритм для Робота:
алг
нач
нц 32 раз
вправо; закрасить
кц
кон
1)Если правее Робота не встретится препятствий, то, выполнив приведённый выше алгоритм, он переместится на клеток вправо и закрасит эти клетки.
2)Если правее Робота не встретится препятствий, то, выполнив приведённый выше алгоритм, он переместится на 32 клеток вправо.
3)Если правее Робота не встретится препятствий, то, выполнив приведённый выше алгоритм, он переместится на 32 клеток вправо и закрасит эти клетки.
Если левее Робота не встретится препятствий, то, выполнив приведённый выше алгоритм, он переместится на 32 клеток влево и закрасит эти клетки.
ответить!
Какое из трёх?
Значит, V=K*i=67 символов (с учётом пробелов и знаков препинания) * 16 бит= 1072 бит или 134 байт.
И здесь у нас проблема. Мой ответ не совпадает ни с одним из возможных вариантов. Более-менее сходными с моим ответом являются варианты 2) 134 бит (у меня 134 бАЙт) и 4) 1027 бит (у меня 1072 бит).
И тут есть вероятными три пути развития событий: а) я допустил ошибку в вычислениях, б) Вы допустили ошибку при написании вариантов ответа, в) ошибка кроется в самом задании.
Внимательно перечитайте задание, вдруг вы обнаружите, что случайно ошиблись.
max_length = 10;
type
arr = array [0..max_length, 0..max_length] of byte;
var
a: arr;
i, j, n, m, k, x, y: byte;
c: char;
f: text;
//procedure PrintMatrix(a: arr);
//begin
// for var i := 0 to max_length do
// begin
// writeln;
// for var j := 0 to max_length do
// write(a[i, j], ' ');
// end;
// writeln;
//end;
procedure labirint(i, j: byte);
begin
if (i <= n) and (i >= 0) and (j <= m) and (j >= 0) and (a[i, j] = 0) then begin
a[i, j] := 1;
k := k + 1;
labirint(i, j - 1);
labirint(i, j + 1);
labirint(i - 1, j);
labirint(i + 1, j);
end;
end;
begin
Assign(f, 'input.txt');
Reset(f);
readln(f, n, m);
for i := 0 to n do
begin
for j := 0 to m do
begin
read(f, c);
case c of
'x': a[i, j] := 2;
'.': a[i, j] := 0;
'+':
begin
x := i;
y := j;
a[i, j] := 0;
end;
end;
end;
readln(f);
end;
Close(f);
// PrintMatrix(a);
labirint(x, y);
writeln(k);
// PrintMatrix(a);
end.
инструментарий для дебага оставила. Проверяйте значение символов перед стартом