Предмет: Информатика,
автор: ReMako
переставить элементы массива в порядке убывания и найти сумму элементов массива находящихся между наибольшим и наименьшим элементом массива не включая их самих pascal
Ответы
Автор ответа:
0
у, сначала нужно найти макс и мин элементы.
Max = A(1)
nMax = 1
Min = A(1)
nMin = 1
For i = 2 to N
if A(i) > Max Then
Max = A(i)
nMax = i
End If
if A(i) < Min Then
Min = A(i)
nMin = i
End If
Next i
Таким образом мы узнали макс и мин элементы, а главное, их номера nMax и nMin.
Проверим, какой номер больше, и сделаем так, чтобы было nMin < nMax.
Если nMin > nMax, поменяем их местами
If nMin > nMax Then
Q = nMin
nMin = nMax
nMax = Q
End If
Теперь нужно отсортировать элементы между ними пузырьковой сортировкой по убыванию
For i = nMin + 1 To nMax - 1
Здесь вставляется алгоритм пузырьковой сортировки, который я не помню. Поищи в Интернете.
Next i
Max = A(1)
nMax = 1
Min = A(1)
nMin = 1
For i = 2 to N
if A(i) > Max Then
Max = A(i)
nMax = i
End If
if A(i) < Min Then
Min = A(i)
nMin = i
End If
Next i
Таким образом мы узнали макс и мин элементы, а главное, их номера nMax и nMin.
Проверим, какой номер больше, и сделаем так, чтобы было nMin < nMax.
Если nMin > nMax, поменяем их местами
If nMin > nMax Then
Q = nMin
nMin = nMax
nMax = Q
End If
Теперь нужно отсортировать элементы между ними пузырьковой сортировкой по убыванию
For i = nMin + 1 To nMax - 1
Здесь вставляется алгоритм пузырьковой сортировки, который я не помню. Поищи в Интернете.
Next i
Аноним:
В общем, это какая-то ерунда. Сказано, что сначала элементы надо отсортировать, а потом с ними что-то делать.
Автор ответа:
1
PascalABC.NET 3.4.2, сборка 1880 от 18.11.2018
Внимание! Если программа не работает, обновите версию!
begin
var a := ArrRandom(ReadInteger('n='), -10, 10);
a.Println;
a := a.OrderDescending.ToArray;
a.Println;
var (max, min) := (a.Max, a.Min);
var i1 := a.IndexesOf(t -> t = max).Last;
var i2 := a.IndexOf(min);
a?[i1 + 1:i2].Sum.Println
end.
Пример
n= 15
-10 9 9 -10 -5 -7 -9 1 -8 -10 1 7 10 4 -5
10 9 9 7 4 1 1 -5 -5 -7 -8 -9 -10 -10 -10
-3
Похожие вопросы
Предмет: Қазақ тiлi,
автор: nazerkeibadilda567
Предмет: Математика,
автор: elenalyhoglad
Предмет: Математика,
автор: sbanu3679
Предмет: Алгебра,
автор: vikyca231
Предмет: Алгебра,
автор: мак86