program GetUniqueValuesProgram;
type
TIntArray = array of Integer;
function getUniqueValues(arr1, arr2: TIntArray): TIntArray;
var
i, j, k: Integer;
found: Boolean;
begin
SetLength(getUniqueValues, 0);
for i := 0 to High(arr1) do
begin
found := False;
for j := 0 to High(arr2) do
if arr1[i] = arr2[j] then
found := True;
if not found then
begin
SetLength(getUniqueValues, Length(getUniqueValues) + 1);
getUniqueValues[High(getUniqueValues)] := arr1[i];
end;
end;
for j := 0 to High(arr2) do
begin
found := False;
for i := 0 to High(arr1) do
if arr2[j] = arr1[i] then
found := True;
if not found then
begin
SetLength(getUniqueValues, Length(getUniqueValues) + 1);
getUniqueValues[High(getUniqueValues)] := arr2[j];
end;
end;
for i := 0 to High(getUniqueValues) - 1 do
for j := 0 to High(getUniqueValues) - i - 1 do
if getUniqueValues[j] > getUniqueValues[j + 1] then
begin
k := getUniqueValues[j];
getUniqueValues[j] := getUniqueValues[j + 1];
getUniqueValues[j + 1] := k;
end;
end;
var
arr1, arr2, result: TIntArray;
i: Integer;
begin
arr1 := [1, 3, 6, 8, 12, 90];
arr2 := [2, 3, 5, 6, 7, 8, 96];
result := getUniqueValues(arr1, arr2);
for i := 0 to High(result) do
Write(result[i], ' ');
end.
(*
run:
1 2 5 7 12 90 96
*)