// PascalABC.NET 3.1, сборка 1219 от 16.04.2016 begin var a:=ArrRandom(40,-12,12).Where(x->abs(x)>=2).Take(20).ToArray; a.Sorted.Println; var sn:=abs(a.Where(x->x<0).Sum); var sp:=abs(a.Where(x->x>0).Sum); if sn>sp then Writeln('Модуль суммы отрицательных чисел больше') else if sn<sp then Writeln('Модуль суммы положительных чисел больше') else Writeln('Модули сумм положительных и отрицательных чисел равны') end.
Var i, j, kolvo:Integer; a, b:array[1..10] of Integer;begin; randomize; {Заполнение массивов} for i:=1 to 10 do begin; a[i] := random(0, 10); b[i] := random(0, 10); end; {Вывод массива a} write('Массив a = [', a[1]); for i:=2 to 10 do begin; write(', ', a[i]); end; writeln('];'); {Вывод массива b} write('Массив b = [', b[1]); for i:=2 to 10 do begin; write(', ', b[i]); end; writeln('];'); {Непосредственно нахождение кол-ва уникальных элементов} kolvo:=0; for i:=1 to 10 do begin; for j:=1 to 10 do begin; if(a[i] = b[j]) then break; if(j=10)then Inc(kolvo); end; end; for i:=1 to 10 do begin; for j:=1 to 10 do begin; if(b[i] = a[j]) then break; if(j=10)then Inc(kolvo); end; end; writeln('Количество уникальных элементов массива: ', kolvo,'.');end.
Результат: Массив a = [8, 10, 4, 9, 0, 1, 5, 8, 9, 8];Массив b = [4, 0, 1, 5, 6, 2, 2, 1, 3, 9];Количество уникальных элементов массива: 8. Выглядит правдоподобно, но не проверял.
begin
var a:=ArrRandom(40,-12,12).Where(x->abs(x)>=2).Take(20).ToArray;
a.Sorted.Println;
var sn:=abs(a.Where(x->x<0).Sum);
var sp:=abs(a.Where(x->x>0).Sum);
if sn>sp then Writeln('Модуль суммы отрицательных чисел больше')
else
if sn<sp then Writeln('Модуль суммы положительных чисел больше')
else Writeln('Модули сумм положительных и отрицательных чисел равны')
end.
Тестовое решение:
-12 -10 -7 -7 -4 3 4 5 5 5 6 6 6 8 9 9 10 10 11 11
Модуль суммы положительных чисел больше
Результат:
Массив a = [8, 10, 4, 9, 0, 1, 5, 8, 9, 8];Массив b = [4, 0, 1, 5, 6, 2, 2, 1, 3, 9];Количество уникальных элементов массива: 8.
Выглядит правдоподобно, но не проверял.