fork download
  1. program FillMatrixByRule;
  2.  
  3. {$APPTYPE CONSOLE}
  4.  
  5. uses
  6. SysUtils;
  7.  
  8. const
  9. N = 6; // размер
  10.  
  11. var
  12. Matrix: array[1..N, 1..N] of Integer;
  13. i, j: Integer;
  14.  
  15. // gроцедура заполнения матрицы
  16. procedure FillMatrix;
  17. begin
  18. // заполняем первый столбец номерами строк (1–6)
  19. for i := 1 to N do
  20. Matrix[i, 1] := i;
  21.  
  22. // заполняем остальные элементы матрицы согласно таблице
  23. Matrix[1, 2] := 12; Matrix[1, 3] := 13; Matrix[1, 4] := 24; Matrix[1, 5] := 25; Matrix[1, 6] := 36;
  24. Matrix[2, 2] := 11; Matrix[2, 3] := 14; Matrix[2, 4] := 23; Matrix[2, 5] := 26; Matrix[2, 6] := 35;
  25. Matrix[3, 2] := 10; Matrix[3, 3] := 15; Matrix[3, 4] := 22; Matrix[3, 5] := 27; Matrix[3, 6] := 34;
  26. Matrix[4, 2] := 9; Matrix[4, 3] := 16; Matrix[4, 4] := 21; Matrix[4, 5] := 28; Matrix[4, 6] := 33;
  27. Matrix[5, 2] := 8; Matrix[5, 3] := 17; Matrix[5, 4] := 20; Matrix[5, 5] := 29; Matrix[5, 6] := 32;
  28. Matrix[6, 2] := 7; Matrix[6, 3] := 18; Matrix[6, 4] := 19; Matrix[6, 5] := 30; Matrix[6, 6] := 31;
  29. end;
  30.  
  31. // процедура вывода матрицы на экран
  32. procedure PrintMatrix;
  33. begin
  34. Writeln('Fulled matrix: ');
  35. for i := 1 to N do
  36. begin
  37. for j := 1 to N do
  38. Write(Matrix[i, j]:3); // выводим с отступом в 3 символа
  39. Writeln; // вереход на новую строку
  40. end;
  41. end;
  42.  
  43. begin
  44. // заполняем матрицу
  45. FillMatrix;
  46.  
  47. // выводим матрицу
  48. PrintMatrix;
  49.  
  50. Readln;
  51. end.
  52.  
Success #stdin #stdout 0s 5312KB
stdin
7 21
1 2 547152
1 3 509157
1 4 539282
1 5 541645         
1 6 458433
1 7 385173

2 3 131528
2 4 92735
2 5 150511
2 6 94440
2 7 194542
3 4 216600
3 5 272401
3 6 157176
3 7 124077
4 5 57785
4 6 97323
4 7 242232
5 6 136663
5 7 283862
6 7 147426
stdout
Fulled matrix: 
  1 12 13 24 25 36
  2 11 14 23 26 35
  3 10 15 22 27 34
  4  9 16 21 28 33
  5  8 17 20 29 32
  6  7 18 19 30 31