Объяснить работу программы(написать для чего каждая строка) - Turbo Pascal (33873)

Узнай цену своей работы

Формулировка задачи:

Задача:Дан массив целых чисел.Найти максимальный элемент среди отрицательных Код программы:

Решение задачи: «Объяснить работу программы(написать для чего каждая строка)»

textual
Листинг программы
const
  n = 10; {размер массива задан константой}
var
  a : array[1..n] of integer; {описание массива}
  i, max, k : integer;
begin
  max := -32768; {изначально полагаем максимум = минимально 
  возможному числу которое помещается в тип integer}
  k := 0; {счетчик количества отрицательных}
  writeln('вводим массив:');
  for i := 1 to n do {цикл}
  begin
    write('Элемент [', i, ']: '); {вывод сообщения о вводе i элемента}
    readln(a[i]); {ввод элемента}
    {если элемент отрицательный a[i] < 0 и при этом больше 
    или равен максимальному a[i] >= max }
    if (a[i] < 0) and (a[i] >= max) then {то}
    begin
      max := a[i]; {максимальным становится этот элемент}
      inc(k) {прибавляем +1 к счетчику отрицательных}
    end
  end; {конец цикла}
  writeln('Вы ввели массив:');
  {вывод массива в строку}
  for i := 1 to n do write(a[i]:6);  
  writeln; {перевод строки}
  {если количество отрицательных не 0, то выводим максимальный}
  if k <> 0 then writeln('максимальное из отрицательных: ', max)
  {иначе выводим, что их нет}
  else writeln('отрицательных нет');
  {ожидаем нажатия enter}
  readln
end.

Объяснение кода листинга программы

const n = 10; var a : array[1..n] of integer; i, max, k : integer; begin max := -32768; k := 0; writeln('вводим массив:'); for i := 1 to n do begin write('Элемент [', i, ']: '); readln(a[i]); {если элемент отрицательный a[i] < 0 и при этом больше или равен максимальному a[i] >= max } if (a[i] < 0) and (a[i] >= max) then begin max := a[i]; inc(k) ;прибавляем +1 к счетчику отрицательных end end; writeln('Вы ввели массив:'); for i := 1 to n do write(a[i]:6); writeln; {перевод строки} {если количество отрицательных не 0, то выводим максимальный} if k <> 0 then writeln('максимальное из отрицательных: ', max) {иначе выводим, что их нет} else writeln('отрицательных нет'); readln; end.

Оцени полезность:

14   голосов , оценка 3.714 из 5
Похожие ответы