(* * * jmeno: * trymax * * popis: nalezeni treti nejmensiho cisla * * level: 1 * * zadani: * Najdete treti nejvetsi cislo v posloupnosti (celych nenulovych). * Jinymi slovy: kdyby byla tato cisla usporadana sestupne, ktere * by bylo treti. * Napr: v 1 2 2 3, je treti nevjvetsi cislo 2. * V pripade, ze takove cislo neexistuje, program vytiskne text * 'trymax neexistuje'. * * input: * Jedno zadani na radku. Zadani ma tvar: *. Z: [neulova cela cisla oddelena mezerou] 0 * Posledni zadani ma cislo 0. * * output: *. Z: [trymax] *. Z: trymax neexistuje * * soubory: * trymax.pas, trymax.out, trymax.in * * au: vitas@popelka.ms.mff.cuni.cz * cp: gpl * *) var { cislo zadani } Z: Integer; { dvojtecka } dt: Char; max1, max2, max3: Integer; x, pocet: integer; begin repeat read(Z, dt, dt); write(Z, ': '); pocet := 0; max1 := - maxint - 1; max2 := - maxint - 1; max3 := - maxint - 1; read(x); while x <> 0 do begin inc(pocet); if x >= max1 then begin max3 := max2; max2 := max1; max1 := x end else if x >= max2 then begin max3 := max2; max2 := x end else if x >= max3 then begin max3 := x end; read(x) end; if pocet > 2 then writeln(max3) else writeln('trymax neexistuje'); until Z = 0; end.