Напишите программу в паскале напомним, что в шахматах используется клеточная доска размером 8х8, где располагаются шахматные фигуры, которые могут перемещаться по определенным правилам. в частности, король может перемещаться на соседнюю клетку по вертикали, горизонтали и диагонали. требуется определить: может ли король выполнить ход из клетки с координатами (x1,y1) в клетку с координатами (x2,y2) на стандартной шахматной доске? входные данные первая строка входного файла input.txt содержит два целых числа x1 и y1 – начальную координату короля. во второй строке записана конечная координата – целые числа x2 и y2 (1 ≤ x1,y1,x2,y2 ≤ 8). гарантируется, что начальная и конечная координаты не . выходные данные в выходной файл output.txt выведите «yes», если ход является допустимым, и «no» - в противном случае.

Флэшик Флэшик    3   02.04.2019 19:17    66

Ответы
61FoX16 61FoX16  25.01.2024 13:05
Хорошо, давайте решим данную задачу. Ниже приведена программа на языке Паскаль, выполняющая описанное условие:

```
program chessMove;

var
x1, y1, x2, y2: integer;
validMove: boolean;

begin
// Считываем входные данные из файла input.txt
assign(input, 'input.txt');
reset(input);
readln(x1, y1);
readln(x2, y2);
close(input);

// Проверка возможности хода короля
if (abs(x2 - x1) <= 1) and (abs(y2 - y1) <= 1) then
validMove := true
else
validMove := false;

// Записываем результат в файл output.txt
assign(output, 'output.txt');
rewrite(output);
if validMove then
writeln('yes')
else
writeln('no');
close(output);
end.
```

Рассмотрим подробно, как работает эта программа:

1. Сначала мы объявляем переменные `x1`, `y1`, `x2` и `y2`, которые будут содержать начальные и конечные координаты короля соответственно, и `validMove`, которая будет хранить информацию о том, является ли ход допустимым.

2. Затем мы открываем файл `input.txt`, считываем начальные и конечные координаты короля и закрываем файл.

3. После этого мы проверяем условие, при котором ход короля считается допустимым: абсолютное значение разности `x2` и `x1` должно быть не больше 1, и абсолютное значение разности `y2` и `y1` должно быть не больше 1.

4. Результат проверки присваиваем переменной `validMove`.

5. Затем мы открываем файл `output.txt`, записываем в него результат проверки условия: если переменная `validMove` равна `true`, то выводим "yes", иначе выводим "no". После этого мы закрываем файл.

Теперь мы можем запустить программу, и результат будет записан в файл `output.txt`.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика