удалить из массива все максимальные элементы
10-11 класс
|
паскаль
const
n = 50;
var
a: array[1..n] of integer;
procedure ShiftRight(ip: integer);
// сдвигает к началу массива все элементы. расположенные за ip
var
i: integer;
begin
for i := ip to n - 1 do a[i] := a[i + 1];
a[n] := -32768
end;
var
i, j, mx, px: integer;
begin
Randomize;
writeln('Исходный массив');
mx := -100;
px := 0;
for i := 1 to n do
begin
a[i] := Random(30) - 15;
write(a[i]:4);
if mx < a[i] then begin
mx := a[i];
px := i
end
end;
writeln;
writeln('Результирующий массив');
if px = n then
for i := 1 to n - 1 do writeln(a[i]:4)
else
begin
for i := 1 to px - 1 do write(a[i]:4);
ShiftRight(px);
i := px;
while (i <= n) and (a[i] <> -32768) do
if a[i] < mx then
begin
write(a[i]:4);
i := i + 1
end
else ShiftRight(i)
end;
writeln
end.
Тестовый пример:
Исходный массив
1 2 -13 0 -2 14 -15 4 -6 -3 14 4 -10 -7 -5 11 -1 -10 9 -10 -12 14 4 -9 -5 -14 9 -9 9 5 3 -10 -15 -3 4 -14 -10 7 1 -11 -8 -15 5 -6 9 -3 9 -14 -3 1
Результирующий массив
1 2 -13 0 -2 -15 4 -6 -3 4 -10 -7 -5 11 -1 -10 9 -10 -12 4 -9 -5 -14 9 -9 9 5 3 -10 -15 -3 4 -14 -10 7 1 -11 -8 -15 5 -6 9 -3 9 -14 -3 1
Другие вопросы из категории
каждый следующий год= 90 % от прироста предыдущего
данный массив.
s: = 0;
n : = 10 ;
for i : = 1 to n do
begin
if i = n - i then s : = s + A[i] + A[i + 1];
end;
В начале выполнения этого фрагмента в массиве находились числа 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, т. е. элемент А[0]=0, А[1]=2 и т. д. Чему будет равно значение переменной s после выполнения данной программы?
1) 0
2) 11
3) 22
4) 110
Читайте также
размерностью 8 и 10 элементов.
Удалить из него все элементы, в записи которых есть цифра 5.
Вставить число k после всех элементов, кратных своему номеру (k вводится с клавиатуры).
Поменять местами первый положительный и последний отрицательный элементы.
и устанавливается первым в массиве, затем из оставшихся находится минимальный элемент и устанавливается вторым в массиве, после чего отыскивается из оставшихся элементов максимальный и устанавливается третьим в массиве и т.д. Размерность массива задается с клавиатуры.
Помогите, пожалуйста, не получается.
цифр(включая однозначные числа). 2. вставить число k перед всеми элементами, в которых есть цифра 1(k вводить с клавиатуры). 3. переставить первые три и последние три элемента местами, сохраняя их следование.