Заполнить массив так, чтобы в каждой строке и каждом столбце не было повторяющихся элементов - Free Pascal

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

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

Есть матрица NxN (N<=10). Требуется заполнить массив так, чтобы в каждой строке и каждом столбце не было повторяющихся элементов. Вход 3 0 2 0 0 1 0 2 0 0 выход 1 2 3 3 1 2 2 3 1

Решение задачи: «Заполнить массив так, чтобы в каждой строке и каждом столбце не было повторяющихся элементов»

textual
Листинг программы
  1. var a:array[1..10,1..10] of integer;
  2.      i,j,k,n:integer;
  3. begin
  4. write('n=');readln(n);
  5. for i:=1 to n do
  6.   begin
  7.    k:=i-1;
  8.    for j:=1 to n do
  9.      begin
  10.        k:=k+1;
  11.        if k>n then k:=1;
  12.        a[i,j]:=k;
  13.        write(a[i,j]:3);
  14.      end;
  15.    writeln;
  16.   end;
  17. end.

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

  1. Объявлены переменные: a (массив), i, j, k, n (циклы)
  2. Задается значение переменной n с помощью ввода с клавиатуры
  3. Заполняется массив a с помощью двух вложенных циклов а) Внешний цикл (i) перебирает строки массива (от 1 до n) б) Внутренний цикл (j) перебирает столбцы массива (от 1 до n) в) Вычисляется значение k как i-1 (для удобства работы со строками массива) г) Если k больше n, то значение k устанавливается равным 1 (для обеспечения заполнения массива без повторений) д) Значение k присваивается элементу массива a[i,j] е) Значение k выводится на экран с помощью функции write(a[i,j],3) (для контроля заполнения массива)
  4. После завершения внутреннего цикла, выводится символ новой строки с помощью функции writeln (для разделения строк массива)
  5. После завершения внешнего цикла, выводится символ новой строки с помощью функции writeln (для разделения строк массива)

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


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

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

9   голосов , оценка 4.111 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы