Программирование в Pascal) Надо написать программу. 1.N=20 Определить сумму отрицательных элементов массива. 2.Сдвинуть элементы массива на одну позицию вправо, последний элемент переместить на первое место. 3.Все положительные элементы исходного массива записать во второй массив, все отрицательные элементы – в третий массив.
program ArrayManipulation; const N = 20; var arr, positiveArr, negativeArr: array[1..N] of integer; sum, i, temp: integer; begin // Инициализация массива случайными значениями randomize; for i := 1 to N do arr[i] := random(200) - 100; // случайное число от -100 до 99
// 1. Определение суммы отрицательных элементов массива sum := 0; for i := 1 to N do if arr[i] < 0 then sum := sum + arr[i];
writeln('Сумма отрицательных элементов массива: ', sum);
// 2. Сдвиг элементов массива вправо temp := arr[N]; for i := N downto 2 do arr[i] := arr[i-1]; arr[1] := temp;
writeln('Массив после сдвига на одну позицию вправо:'); for i := 1 to N do write(arr[i], ' '); writeln;
// 3. Разделение элементов массива на положительные и отрицательные // и запись в соответствующие массивы positiveArr[0] := 0; negativeArr[0] := 0; for i := 1 to N do begin if arr[i] >= 0 then begin positiveArr[positiveArr[0]+1] := arr[i]; positiveArr[0] := positiveArr[0] + 1; end else begin negativeArr[negativeArr[0]+1] := arr[i]; negativeArr[0] := negativeArr[0] + 1; end; end;
writeln('Положительные элементы массива:'); for i := 1 to positiveArr[0] do write(positiveArr[i], ' '); writeln;
writeln('Отрицательные элементы массива:'); for i := 1 to negativeArr[0] do write(negativeArr[i], ' '); writeln;
program ArrayManipulation;
const
N = 20;
var
arr, positiveArr, negativeArr: array[1..N] of integer;
sum, i, temp: integer;
begin
// Инициализация массива случайными значениями
randomize;
for i := 1 to N do
arr[i] := random(200) - 100; // случайное число от -100 до 99
// 1. Определение суммы отрицательных элементов массива
sum := 0;
for i := 1 to N do
if arr[i] < 0 then
sum := sum + arr[i];
writeln('Сумма отрицательных элементов массива: ', sum);
// 2. Сдвиг элементов массива вправо
temp := arr[N];
for i := N downto 2 do
arr[i] := arr[i-1];
arr[1] := temp;
writeln('Массив после сдвига на одну позицию вправо:');
for i := 1 to N do
write(arr[i], ' ');
writeln;
// 3. Разделение элементов массива на положительные и отрицательные
// и запись в соответствующие массивы
positiveArr[0] := 0;
negativeArr[0] := 0;
for i := 1 to N do
begin
if arr[i] >= 0 then
begin
positiveArr[positiveArr[0]+1] := arr[i];
positiveArr[0] := positiveArr[0] + 1;
end
else
begin
negativeArr[negativeArr[0]+1] := arr[i];
negativeArr[0] := negativeArr[0] + 1;
end;
end;
writeln('Положительные элементы массива:');
for i := 1 to positiveArr[0] do
write(positiveArr[i], ' ');
writeln;
writeln('Отрицательные элементы массива:');
for i := 1 to negativeArr[0] do
write(negativeArr[i], ' ');
writeln;
readln;
end.