Ребят, помогите с решением задачи в Pascal, массивы. Вопрос- Дана матрица A(nxn). Вывести номера строк и столбцов в которых есть одинаковые элементы.

Ответы

Ответ дал: Аноним
0
// PascalABC.NET 3.3, сборка 1623 от 16.01.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('Количество строк (столбцов) в массиве:');
  Writeln('*** Исходный массив ***');
  var a:=MatrRandom(n,n,10,30);
  a.Println(3); Writeln(3*a.ColCount*'-');
  Write('Строки с повторяющимися элементами: ');
  var (i,k):=(0,0);
  foreach var строка in a.Rows do begin
    i+=1;
    if строка.Count<>строка.Distinct.Count then begin
      k+=1; Print(i)
      end
    end;
  if k=0 then Writeln('нет')
  else Writeln;
  Write('Столбцы с повторяющимися элементами: ');
  (i,k):=(0,0);
  foreach var столбец in a.Cols do begin
    i+=1;
    if столбец.Count<>столбец.Distinct.Count then begin
      k+=1; Print(i)
      end
    end;
  if k=0 then Writeln('нет')
  else Writeln
end.

Пример
Количество строк (столбцов) в массиве: 6
*** Исходный массив ***
 30 16 23 17 19 27
 18 13 21 19 21 11
 30 10 24 27 22 20
 19 28 15 29 15 18
 11 30 22 25 21 15
 27 14 27 28 18 28
------------------
Строки с повторяющимися элементами: 2 4 6
Столбцы с повторяющимися элементами: 1 5
Ответ дал: ST4NG
0
Нужен другой формат этого задания
Ответ дал: ST4NG
0
Там непонятно что, почему
Ответ дал: Аноним
0
Для начала надо научиться свои мысли выражать ясно. Вы написали, про свой же вопрос, что нужен "другой формат этого ЗАДАНИЯ" - потому что "Там непонятно что, почему". Ну так это Ваш вопрос к самому себе: для чего Вы помещаете задание, в котором Вам "непонятно"?
Вас заинтересует