Упорядочите строки данной матрицы в порядке возрастания количества одинаковых элементов в каждой строке - Turbo Pascal
Формулировка задачи:
Упорядочите строки данной матрицы в порядке возрастания количества одинаковых элементов в каждой строке. Воспользуйтесь сортировкой методом простых вставок.
Помогите пожалуйста, вообще не понимаю как это делать, но нужно срочно, прошу помочь, заранее спасибо)))
Решение задачи: «Упорядочите строки данной матрицы в порядке возрастания количества одинаковых элементов в каждой строке»
textual
Листинг программы
const m=5; n=20; type TRow = array [1..n] of Integer; var a: array [1..m] of TRow; b: array [1..m] of Integer; d: TRow; i, j, k, t: Integer; begin Randomize; WriteLn('A ='); for i:=1 to m do begin for j:=1 to n do begin a[i,j]:=Random(10); Write(a[i,j]:3); k:=j-1; while (k>0) and (a[i,k]<>a[i,j]) do Dec(k); Inc(b[i],Ord(k<>0)); end; WriteLn(' |',b[i]); end; for i:=2 to m do begin j:=i-1; t:=b[i]; d:=a[i]; while (j>0) and (b[j]>t) do begin b[j+1]:=b[j]; a[j+1]:=a[j]; Dec(j); end; b[j+1]:=t; a[j+1]:=d; end; WriteLn('A''='); for i:=1 to m do begin for j:=1 to n do Write(a[i,j]:3); WriteLn(' |',b[i]); end; end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д