Дан массив состоящий из N чисел, заменить в нём все отрицательные числа их абсолютным значением.

Массив используется для наглядности, чтобы вывод был построчно одна стока под другой, видно, что меняет.

program chisla;
const
n = 10; {кол-во чисел, можно изменить}
var
i : integer;
a : array[1..n, 1..2] of real; {использую массив, только для наглядности}

begin
for i := 1 to n do
begin
writeln('Введите ', i, ' число.');
readln(a[i, 1]);
if a[i,1] < 0 then a[i, 2] := abs(a[i, 1])
else a[i, 2] := a[i, 1];
end;
{выводим результат}
writeln('Введённые числа.');
for i := 1 to n do
write(a[i, 1]:3:0);
writeln;
writeln('Результат.');
for i := 1 to n do
write(a[i, 2]:3:0);

readln;
end.

Скачать решение.

Поменять местами два соседних эл-та в массиве.

program mass1;
const
n = 11;
var
mass : array[1..n] of integer;
i : integer;
buf : integer;
begin
randomize;
for i := 1 to n do // заполняем массив
begin
mass[i] := random(50);
write(mass[i], ' ' ); // сразу выводим для контроля
end;

i := 1;
repeat // меняем местами
if i + 1 <= n then
begin
buf := mass[i];
mass[i] := mass[i + 1];
mass[i + 1] := buf;
end;
i := i + 2;
until i >= n;

// выводим результат
writeln;
writeln;
for i := 1 to n do
write(mass[i], ' ');

readln;
end.

Скачать решение.

Hosted by uCoz