Урок 15(Задача 1)

Урок 15 (задача 1)

Знаю, что это самый-самый способ), но, к сожалению, в других попытках был сбой, и я на тугой конец сделал это:)

var a : array[1..7] of integer;
  b: integer;

begin
   for b:= 1 to 7 do
   begin
   writeln('vvedite cislo elementa massiva');
   readln(a[b]);
   end;
   if (a[1] > a[2]) and (a[1] > a[3]) and (a[1] > a[4]) and
   (a[1] > a[5]) and (a[1] > a[6]) and (a[1] > a[7]) then
   write('bolse vseh -', a[1])
   else if (a[2] > a[3]) and (a[2] > a[4]) and (a[2] > a[5]) and
     (a[2] > a[6]) and (a[2] > a[7]) then
      write('bolse vseh -', a[2])
        else if (a[3] > a[4]) and (a[3] > a[5]) and (a[3] > a[6]) and
         (a[3] > a[7]) then
          write('bolse vseh -', a[3])
           else if (a[4] > a[5]) and (a[4] > a[6]) and (a[4] > a[7]) then
            write('bolse vseh -', a[4])
                else if (a[5] > a[6]) and (a[5] > a[7]) then
                  write('bolse vseh -', a[5])
                     else if (a[6] > a[7]) then
                       write('bolse vseh -', a[6])
                          else write('bolse vseh -', a[7]);

end.
vedro-compota's picture

массив надо обходить в цикле, запоминая максимум в какую-то переменную, сравнивая его с каждым очередным значением.
А что если было бы 500 значений в вашем решении?

_____________
матфак вгу и остальная классика =)

Romakip's picture

var a : array[1..7] of integer;
    x,i: integer;
begin
  for i:= 1 to 7 do
   begin
     writeln('vvedite znahenie massiva');
     readln(a[i]);
      if (a[i] > x) then
         x := a[i];
   end;
  writeln(x);
end.