{ Doplňte kód procedur, načtěte několik zaměstnanců (nejméně 4), pak vypište - všechny dojíždějící motorovými prostředky - všechny zaměstnance účtárny - všechny, kdo pracují ve výrobě a zároveň jsou mladší 20 let (vždy vypište zadanou tabulku, pak čekejte na stisknutí jakékoliv klávesy, zobrazte další tabulku, ...). Potom vypište všechny zaměstnance, zeptejte se, kterého propustit, proveďte a znovu všechny vypište. Vyzkoušejte na druhém zaměstnanci v pořadí. P. S. Něco je nutné přidat také na začátek, aby program fungoval. } type TDoprava = (pesky, vlak, auto, bus, kolo, kolobezka); TOddeleni = (vyroba, uctarna, pokladna, vedeni); TNazev = string[20]; TZamestnanec = record prijmeni, jmeno: TNazev; oddeleni: TOddeleni; eCislo: word; doprava: TDoprava; { doprava do zamestnani } narozen: word; { rok narozeni } end; const dojizdejici: set of TDoprava = [vlak, auto, bus]; dProstredky: set of TDoprava = [vlak, auto, bus, kolo, kolobezka]; MaxZam = 22; var zam: array [1..MaxZam] of TZamestnanec; pocetZam: byte; procedure VypisHlavicku; { smaze obrazovku a vypise hlavicku tabulky ve tvaru Prijmeni Jmeno Oddeleni Cislo Doprava Narozen a zaradkuje (tedy pouzije writeln) } procedure VypisZamestnance(z: TZamestnanec); { vypise udaje o zadanem zamestnanci zarovnane podle hlavicky, pak zaradkuje } procedure NactiZamestnance; { smaze obrazovku, zjisti, zda pocet zamestnancu jeste neni na maximu, jestlize ne, postupne nacita jednotlive udaje o zamestnanci, uklada je na nejblizsi volne misto v poli zamestnanců a nezapomene zvysit hodnotu promenne pocetZam } procedure PropustZamestnance(ktery: byte); { Jestlize existuje zamestnanec s timto poradovym cislem (tzn. cislo je mensi nebo rovno pocetZam), posune na jeho misto nasledujiciho zamestnance, na misto toho nasledujiciho dalsiho, ... az na konec pole, pak snizi pocet zamestnancu } begin ... end.