Хееелп. Паскаль. Списки. Формировать списки из N элементов. Добавить элемент А перед вторым максимальным элементом (2,100,5,99*,17). Удаление первого максимального элемента списка (2,5,А,99,17). Выполнить сортировку списка по возрастанию. После выполнения каждой операции выводить список на экран.
Привет! Я могу помочь тебе с этой задачей на языке программирования Pascal. Вот пример кода, который реализует все необходимые операции:
program Lists; const N = 5; var arr: array[1..N] of Integer; i, max1, max2, posA: Integer; procedure PrintArray(); begin for i := 1 to N do Write(arr[i], ' '); Writeln; end; begin WriteLn('Введите ', N, ' элементов списка:'); for i := 1 to N do Readln(arr[i]); // Находим два максимальных элемента и позицию вставки элемента А max1 := -1; max2 := -1; for i := 1 to N do begin if arr[i] > max1 then begin max2 := max1; max1 := arr[i]; end else if arr[i] > max2 then begin max2 := arr[i]; posA := i; end; end; // Добавляем элемент А перед вторым максимальным элементом for i := N downto posA + 1 do arr[i] := arr[i - 1]; arr[posA] := A; WriteLn('Список после добавления элемента А:'); PrintArray(); // Удаляем первый максимальный элемент for i := 1 to N do begin if arr[i] = max1 then begin for j := i to N - 1 do arr[j] := arr[j + 1]; Break; end; end; WriteLn('Список после удаления первого максимального элемента:'); PrintArray(); // Сортируем список по возрастанию for i := 1 to N - 1 do for j := i + 1 to N do if arr[i] > arr[j] then begin A := arr[i]; arr[i] := arr[j]; arr[j] := A; end; WriteLn('Список после сортировки:'); PrintArray(); end.
Просто вставь этот код в свою среду программирования Pascal и запусти его. После каждого шага будешь видеть, как изменяется список. Надеюсь, это поможет! Если у тебя будут еще вопросы, не стесняйся спрашивать.
Привет! Я могу помочь тебе с этой задачей на языке программирования Pascal. Вот пример кода, который реализует все необходимые операции:
program Lists;const
N = 5;
var
arr: array[1..N] of Integer;
i, max1, max2, posA: Integer;
procedure PrintArray();
begin
for i := 1 to N do
Write(arr[i], ' ');
Writeln;
end;
begin
WriteLn('Введите ', N, ' элементов списка:');
for i := 1 to N do
Readln(arr[i]);
// Находим два максимальных элемента и позицию вставки элемента А
max1 := -1;
max2 := -1;
for i := 1 to N do
begin
if arr[i] > max1 then
begin
max2 := max1;
max1 := arr[i];
end
else if arr[i] > max2 then
begin
max2 := arr[i];
posA := i;
end;
end;
// Добавляем элемент А перед вторым максимальным элементом
for i := N downto posA + 1 do
arr[i] := arr[i - 1];
arr[posA] := A;
WriteLn('Список после добавления элемента А:');
PrintArray();
// Удаляем первый максимальный элемент
for i := 1 to N do
begin
if arr[i] = max1 then
begin
for j := i to N - 1 do
arr[j] := arr[j + 1];
Break;
end;
end;
WriteLn('Список после удаления первого максимального элемента:');
PrintArray();
// Сортируем список по возрастанию
for i := 1 to N - 1 do
for j := i + 1 to N do
if arr[i] > arr[j] then
begin
A := arr[i];
arr[i] := arr[j];
arr[j] := A;
end;
WriteLn('Список после сортировки:');
PrintArray();
end.
Просто вставь этот код в свою среду программирования Pascal и запусти его. После каждого шага будешь видеть, как изменяется список. Надеюсь, это поможет! Если у тебя будут еще вопросы, не стесняйся спрашивать.