﻿begin
  var n := ReadlnInteger('n =');
  
  var x := SeqRandomReal(n, 0, 9).Select(x -> Round(x / 1, 2)).ToArray;
  Print(NewLine + 'Before:' + NewLine + 'X:');
  x.Println;
  
  var y := SeqRandomReal(n, 0, 9).Select(x -> Round(x / 1, 2)).ToArray;
  Print('Y:');
  y.Println;
  
  for var i := 0 to n - 1 do
    if x[i] < y[i] then Swap(x[i], y[i]);
  
  Print(NewLine + 'After:' + NewLine + 'X:');
  x.Println;
  
  Print('Y:');
  y.Println;
  
  Write(NewLine + 'X array elements'' product: ', 
        x.Aggregate(1.0, (p, x)-> p * x):0:4)
end.