Шахматную доску представим в виде квадратной матрицы порядка 8. Даны натуральные числа m и n, которые определяют место коня - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Шахматную доску представим в виде квадратной матрицы порядка 8. Даны натуральные числа m и n (1<=m<=8,<=n<=8), которые определяют место коня. Соответствующий элемент матрицы положим равным 2. Поля, находящиеся под угрозой коня, положить равным 1, а остальные - 0. Напечатать полученную матрицу.

помогите пожалуйста срочно надо

Решение задачи: «Шахматную доску представим в виде квадратной матрицы порядка 8. Даны натуральные числа m и n, которые определяют место коня»

textual
Листинг программы
const
  n = 8;
 
var
  a: array[1..n, 1..n] of byte;
  i, j, k1, k2: byte;
 
begin
  write('Введите координаты коня k1, k2: ');
  readln(k1, k2);
  for i := 1 to n do
  begin
    for j := 1 to n do
    begin
      if (i = k1) and (j = k2) then a[i, j] := 2 
      else if ((abs(k1 - i) = 2) and (abs(k2 - j) = 1))
          or ((abs(k1 - i) = 1) and (abs(k2 - j) = 2)) 
            then 
        a[i, j] := 1
      else a[i, j] := 0;
      write(a[i, j]:3);
    end;
    writeln;
  end;
  readln;
end.

Объяснение кода листинга программы

В данном коде объявлены следующие переменные:

  • n - количество строк и столбцов шахматной доски, равное 8;
  • a - массив размером n x n, представляющий шахматную доску;
  • i, j, k1, k2 - переменные, используемые для определения позиции коня на доске. После ввода координат коня k1, k2, происходит итерация по всем элементам массива a. Если значение элемента a[i, j] равно 2, то конь находится на этой позиции. В противном случае, если выполняется одно из условий:
  • abs(k1 - i) равно 2 и abs(k2 - j) равно 1;
  • abs(k1 - i) равно 1 и abs(k2 - j) равно 2; то значение элемента a[i, j] устанавливается равным 1. В противном случае, значение элемента a[i, j] устанавливается равным 0. После завершения цикла выводится значение элемента a[i, j]. Затем программа завершается и ожидает новых команд.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5
Похожие ответы