Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.28;
Скачать: CL | DM;

Вниз

Помогите найти предмаксимум   Найти похожие ветки 

 
MARcoDEN ©   (2002-11-15 18:58) [0]

Доброго времени суток, господа программисты! Очень прошу вас помочь мне вот в чем: имеется код программы (указан ниже), который находит максммальный и минимальный элемент в массиве чисел (как положительных, так и отрицательных). НО! Вдобавок к этому нужно найти предмаксимальный элемент! В этом и состоит загвоздка. Пожалуйста, подскажите, как это сделать! Очень прошу!}

program min_max;
var
mas: array[1..10] of integer;
nomer_max, nomer_min, max, min, i: integer;
begin
{fulfill and display the massive}
write("Massive elements: ");
randomize;
for i:=1 to 10 do
begin
mas[i]:=-100+random(255);
write("[",mas[i],"] ");
end;
{temp values}
max:=mas[1]; nomer_max:=1;
min:=mas[1]; nomer_min:=1;
{search for minimum and maximum}
for i:=2 to 10 do
if max<mas[i] then
begin
max:=mas[i];
nomer_max:=i;
end
else if min>mas[i] then
begin
min:=mas[i];
nomer_min:=i;
end;
{outputting results}
writeln("");
writeln("Minimum: ",min,"; number - ",nomer_min);
writeln("Maximum: ",max,"; number - ",nomer_max);
readln;
end.


С уважением,
MARcoDEN


 
Андрей Прокофьев ©   (2002-11-15 19:08) [1]

Eсли "предмаксимум" это - следующий за максимальным, то, видимо,
nomer_pmax := 1;
...
if max<mas[i] then
begin
max:=mas[i];
nomer_pmax := nomer_max;
nomer_max:=i;
end



 
Андрей Прокофьев ©   (2002-11-15 19:11) [2]

Я поторопился :(


 
Андрей Прокофьев ©   (2002-11-15 19:21) [3]

pmax, nomer_pmax : Integer;
pmax := mas[i];
nomer_pmax := 1;

for i:=2 to 10 do
if max<mas[i] then
begin

pmax := max;
nomer_pmax := nomer_max;

max:=mas[i];
nomer_max:=i;
end
else if min>mas[i] then
begin
min:=mas[i];
nomer_min:=i;
end
else if pmax < mas[i] then
begin
pmax := mas[i];
nomer_pmax := i;
end;


 
TTCustomDelphiMaster ©   (2002-11-15 19:21) [4]


{temp values}
max:=mas[1]; nomer_max:=1;
pmax:=max;
min:=mas[1]; nomer_min:=1;
{search for minimum and maximum}
for i:=2 to 10 do
begin
if pmax=max and pmax>mas[i] then
pmax:=mas[i];
if max<mas[i] then
begin
pmax:=max;
max:=mas[i];
nomer_max:=i;
end;
end;


 
MARcoDEN ©   (2002-11-17 11:47) [5]

Спасибо! Буду пробовать!



Страницы: 1 вся ветка

Текущий архив: 2002.11.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
1-93033
Andrei_
2002-11-19 13:20
2002.11.28
Выравнивание строк в ListBox


14-93236
Ajax
2002-11-10 12:06
2002.11.28
Программы распознавания текста по голосу...


6-93156
Граф
2002-09-28 04:43
2002.11.28
запароленные ресурсы локальной сети


7-93278
Wuk
2002-09-27 18:07
2002.11.28
Gif файл


4-93298
Zone_666
2002-10-18 00:53
2002.11.28
Как заблокировать доступ к папке (к каталогу)