Найти максимальный элемент массива среди отрицательных чисел - Pascal
Формулировка задачи:
Проверьте домашку) Вообще не врубаюсь в этот паскаль, но вроде что-то набросал) Ну и кракозябра которую я набросал:
Прошу поправить мои нелепости. Спасибо
Решение задачи: «Найти максимальный элемент массива среди отрицательных чисел»
textual
Листинг программы
program lab1;
var
B : array[1..100] of real;
i,k,iMax : integer;
begin
write('vvedite kol-vo elementov massiva: ');
read(k);
write('vvedite massiv: ');
for i:=1 to k do
read(B[i]);
iMax := -1; {это признак того, что ещё максимальное отрицательное не нашли}
for i:=1 to k do
if (B[i]<0) then
if iMax = -1 then
{первое отрицательное запоминаем как максимальное}
iMax := i
else {иначе, если уже были отрицательные, сравним их с максимальным значением}
if B[i]>B[iMax] then iMax := i;
if iMax=-1 then WriteLn('в массиве вообще нет отрицательных чисел! ')
else
writeln('Max: ',B[iMax],' ','iMax: ',iMax);
Readln;
end.
Объяснение кода листинга программы
- Ввод количества элементов массива и самого массива.
- При инициализации переменной iMax значением -1, она становится признаком того, что еще не найдено максимальное отрицательное число.
- При проверке каждого элемента массива в цикле, если он отрицательный, то проверяется, является ли он больше максимального отрицательного числа, если да, то он становится новым максимальным отрицательным числом.
- Если в массиве вообще нет отрицательных чисел, выводится сообщение об этом.
- Вывод максимального отрицательного числа и его индекса.