// PascalABC.NET 3.3, сборка 1611 от 06.01.2018 // Внимание! Если программа не работает, обновите версию!
begin var (n,m):= ReadInteger2('n, m -> '); var a:= MatrRandom(m,n);Writeln('Исходная матрица:');a.Println; dec(n);dec(m);for var i:= 0 to m do begin swap(a[i, a.Row(i).IndexMin],a[i, n]); swap(a[i, a.Row(i).IndexMax],a[i, 0]); end; Writeln('Конечная матрица:'); a.Print end.
// PascalABC.NET 3.3, сборка 1625 от 17.01.2018 // Внимание! Если программа не работает, обновите версию!
function Dist2(a,b:real):=a*a+b*b; // квадрат расстояния до точки
begin var n:=ReadInteger('n='); var a:=SeqRandom(2*n,-999,999).Select(t->t/10).ToArray; a.Println; var r:=0.0; var d:real; for var i:=0 to n-1 do begin d:=Dist2(a[i],a[i+1]); if d>r then r:=d end; Writeln('Минимальный радиус равен ',Sqrt(r):0:3) end.
// Внимание! Если программа не работает, обновите версию!
begin
var (n,m):= ReadInteger2('n, m -> ');
var a:= MatrRandom(m,n);Writeln('Исходная матрица:');a.Println;
dec(n);dec(m);for var i:= 0 to m do
begin
swap(a[i, a.Row(i).IndexMin],a[i, n]);
swap(a[i, a.Row(i).IndexMax],a[i, 0]);
end;
Writeln('Конечная матрица:');
a.Print
end.
Пример:
n, m -> 5 6
Исходная матрица:
99 9 30 83 11
89 13 70 50 54
43 59 22 13 89
67 27 48 72 41
63 62 5 58 71
45 35 60 3 95
Конечная матрица:
99 11 30 83 9
89 54 70 50 13
89 59 22 43 13
72 41 48 67 27
71 62 63 58 5
95 35 60 45 3
// Внимание! Если программа не работает, обновите версию!
function Dist2(a,b:real):=a*a+b*b; // квадрат расстояния до точки
begin
var n:=ReadInteger('n=');
var a:=SeqRandom(2*n,-999,999).Select(t->t/10).ToArray;
a.Println;
var r:=0.0;
var d:real;
for var i:=0 to n-1 do begin
d:=Dist2(a[i],a[i+1]);
if d>r then r:=d
end;
Writeln('Минимальный радиус равен ',Sqrt(r):0:3)
end.
Пример
n= 15
41.4 57.5 -70.6 98.5 31 76 4.7 98.3 74 -8.1 -85.2 -73.3 39.1 -27.2 41.3 -91.8 -20.5 60.9 38.4 -89.2 77.5 -62 68.8 -6.4 85.4 96.9 49.2 -64 65.6 99.5
Минимальный радиус равен 123.040