
Составить программу находящую максимальный и минимальный элемент масива и меняющий их местами


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

// PascalABC.NET 3.1, сборка 1198 от 11.03.2016
begin
var a:=ArrRandom(ReadInteger('n='),10,99); a.Println;
Swap(a[a.IndexMax],a[a.IndexMin]); a.Println
end.
Тестовое решение:
n= 10
21 52 65 12 88 16 13 76 97 36
21 52 65 97 88 16 13 76 12 36



Вот без "наворотов", специфичных для паскаль.абц:
program test_arr;
type
arr = array of byte;
elem = record
val : byte;
ind : byte;
end;
var
i, n : byte;
a : arr;
min, max : elem;
begin
write('Введите размер массива: ');
readln(n);
setLength(a, n);
randomize;
for i:=0 to n-1 do begin
a[i] := random(100);
write(a[i], ' ');
end;
writeln;
min.val:=a[0];
min.ind:=0;
max.val:=a[0];
max.ind:=0;
for i:=0 to n-1 do begin
if a[i] < min.val then begin
min.val := a[i];
min.ind := i;
end;
if a[i] > max.val then begin
max.val := a[i];
max.ind := i;
end;
end;
a[min.ind] := max.val;
a[max.ind] := min.val;
for i:=0 to n-1 do
write(a[i], ' ');
writeln;
end.
Введите размер массива: 10
70 9 99 96 10 41 49 19 99 82
70 99 9 96 10 41 49 19 99 82


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