На языке Паскал
Создать одномерный статический массив длиной, заданной константой. Дружественный диалог с пользователем.
Требуется сгруппировать положительные элементы массива в его начале, отрицательные – в конце с сохранением их порядка.

5 Мая 2019 в 19:45
210 +1
0
Ответы
1

program PositiveNegativeSortingArray;

const
ARRAY_LENGTH = 10;

type
IntegerArray = array[1..ARRAY_LENGTH] of Integer;

var
arr: IntegerArray;
i, temp, positiveIndex, negativeIndex: Integer;

begin
// Заполнение массива
writeln('Введите элементы массива:');
for i := 1 to ARRAY_LENGTH do
begin
write('arr[', i, ']: ');
readln(arr[i]);
end;

// Сортировка элементов
positiveIndex := 1;
negativeIndex := ARRAY_LENGTH;

while positiveIndex < negativeIndex do
begin
if arr[positiveIndex] > 0 then
positiveIndex := positiveIndex + 1
else if arr[negativeIndex] < 0 then
negativeIndex := negativeIndex - 1
else
begin
temp := arr[positiveIndex];
arr[positiveIndex] := arr[negativeIndex];
arr[negativeIndex] := temp;
positiveIndex := positiveIndex + 1;
negativeIndex := negativeIndex - 1;
end;
end;

// Вывод отсортированного массива
writeln('Положительные элементы в начале, отрицательные в конце:');
for i := 1 to ARRAY_LENGTH do
write(arr[i], ' ');

readln;
end.

28 Мая в 16:50
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 943 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир