
Вопрос задан 06.08.2023 в 10:32.
Предмет Информатика.
Спрашивает Блохин Семен.
В одномерном массиве поменять местами максимальные и минимальные элементы (в паскале)


Ответы на вопрос

Отвечает Сазонова Валерия.
Program pr;
var a:array [1..10] of integer
i, imax, imin, mx, mn, n:integer;
begin
for i := 1 to 10 do
a[i] := random(50);
mx := a[1];
for i := 2 to 10 do
begin
if a[i] > mx then
begin
mx := a[i];
imax := i
end;
end;
mn := a[0];
for i := 2 to 10 do
begin
if a[i] < mn then
begin
mn := a[i];
imin := i
end;
end;
a[imax] := mn;
a[imin] := mx
writeln(a);
end.
var a:array [1..10] of integer
i, imax, imin, mx, mn, n:integer;
begin
for i := 1 to 10 do
a[i] := random(50);
mx := a[1];
for i := 2 to 10 do
begin
if a[i] > mx then
begin
mx := a[i];
imax := i
end;
end;
mn := a[0];
for i := 2 to 10 do
begin
if a[i] < mn then
begin
mn := a[i];
imin := i
end;
end;
a[imax] := mn;
a[imin] := mx
writeln(a);
end.



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Для того чтобы поменять местами максимальный и минимальный элементы в одномерном массиве на языке Паскаль, нужно выполнить следующие шаги:
- Найти индексы минимального и максимального элементов в массиве.
- Обменять значения максимального и минимального элементов, используя найденные индексы.
Вот пример кода на Паскале, который реализует данную задачу:
pascalprogram SwapMinMax; const n = 10; // Размер массива type TArray = array[1..n] of Integer; var arr: TArray; i, minIndex, maxIndex, temp: Integer; // Функция для нахождения индекса минимального элемента function FindMinIndex(const arr: TArray): Integer; var i: Integer; begin Result := 1; for i := 2 to n do if arr[i] < arr[Result] then Result := i; end; // Функция для нахождения индекса максимального элемента function FindMaxIndex(const arr: TArray): Integer; var i: Integer; begin Result := 1; for i := 2 to n do if arr[i] > arr[Result] then Result := i; end; // Процедура для обмена местами элементов по их индексам procedure Swap(var a, b: Integer); var temp: Integer; begin temp := a; a := b; b := temp; end; begin // Заполняем массив случайными числами для примера Randomize; for i := 1 to n do arr[i] := Random(100); // случайное число от 0 до 99 // Находим индексы минимального и максимального элементов minIndex := FindMinIndex(arr); maxIndex := FindMaxIndex(arr); // Выводим исходный массив writeln('Исходный массив:'); for i := 1 to n do write(arr[i], ' '); writeln; // Меняем местами минимальный и максимальный элементы Swap(arr[minIndex], arr[maxIndex]); // Выводим измененный массив writeln('Массив после замены:'); for i := 1 to n do write(arr[i], ' '); writeln; end.
Обратите внимание, что в этом примере массив заполняется случайными числами для демонстрации. В вашей программе вы можете заполнить массив своими данными или считать их с клавиатуры.


Похожие вопросы

Информатика 51

Информатика 58
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili