Pascal – Druhé maximum

Datum vydání: 2011-11-17 17:18:00; aktualizováno: 2019-11-12 08:50:55

Program vypíše v pořadí druhé maximum ze zadaných čísel. Skonční zadáním čísla -999. Pokud jsou některá čísla shodná (např. 5 5 9 9 1 2), vypíše jako druhé maximum číslo 5.

Zdrojový kód Free Pascal

program DruheMaximum;
uses crt;
var cislo, max, max2: Integer;
begin
   clrScr;

   writeln('Program vypise druhe nejvetsi cislo ze zadanych celych cisel. Konec = -999.');
   max := -MAXINT; //-32768
   max2 := max;
   repeat
      write('Zadejte cislo: ');
      readln(cislo);
      if (cislo <> -999) then
      begin
         if (cislo > max) then
         begin
            max2 := max;
            max := cislo;
         end
         else
            if ((cislo < max) and (cislo > max2)) then // cislo je mezi dosavadnim maximem a druhym maximem a neni rovno maximu
               max2 := cislo;
      end;
   until (cislo = -999);
   writeln('Druhe nejvetsi cislo ze zadanych cisel je: ',  max2);

   repeat
   until keyPressed;
end.

Zdrojový soubor

soubor druhe-maximum.pas

Spuštění programu

Program vypise druhe nejvetsi cislo ze zadanych celych cisel. Konec = -999.
Zadejte cislo: 5
Zadejte cislo: 5
Zadejte cislo: 9
Zadejte cislo: 9
Zadejte cislo: 1
Zadejte cislo: 2
Zadejte cislo: -999
Druhe nejvetsi cislo ze zadanych cisel je: 5