pascalabcnet/InstallerSamples/WhatsNew/3_8_0/MultidimensionalSlices.pas
2022-04-18 21:34:18 +03:00

14 lines
752 B
ObjectPascal

// Срезы многомерных массивов
begin
var m := MatrByRow(||1,2,3,4|,|5,6,7,8|,|9,10,11,12||);
Println(m[:,:]); // [[1,2,3,4],[5,6,7,8],[9,10,11,12]]
Println(m[::1,::1]); // [[1,2,3,4],[5,6,7,8],[9,10,11,12]]
Println(m[1:3,1:4]); // [[6,7,8],[10,11,12]]
Println(m[::2,::3]); // [[1,4],[9,12]]
Println(m[::-2,::-1]); // [[12,11,10,9],[4,3,2,1]]
Println(m[^2::-1,^2::-1]); // [[7,6,5],[3,2,1]]
Println(m[:^1,:^1]); // [[1,2,3],[5,6,7]]
Println(m[1,:]); // Одномерный массив [5,6,7,8]
Println(m[^1,:]); // Одномерный массив [9,10,11,12]
Println(m[:,^1]); // Одномерный массив [4,8,12]
end.