program ukol24; uses crt; const {konstanta pro generovani dotazu behem zadani} polozka: array[1..4] of string= ('prijmeni','jmeno', 'telefonni cislo','cislo na mobil'); var zadani,radek,soubor:string; s:text; {textovy soubor} i:integer; odpoved:char; procedure novy; {vytvori novy soubor} begin rewrite(s); write(s,'Prijmeni':15); {a zapise do neho hlavicku} write(s,'Jmeno':15); write(s,'Telefon':15); writeln(s,'Mobil':15); for i:=1 to 60 do write(s,'-'); writeln(s); close(s); end; procedure inicializace; begin clrscr; write('Jmeno souboru: '); {vyber souboru} readln(soubor); assign(s,soubor); {$I-} reset(s); {testuje jestli soubor existuje} {$I+} if ioresult<>0 then novy {kdyz ne tak ho vytvori} else close(s); end; procedure vypis; {vypise obsah souboru} begin clrscr; reset(s); while not eof(s) do begin readln(s,radek); writeln(radek); end; repeat until keypressed; close(s); end; procedure vymaz; {vymaze aktualni soubor} begin clrscr; erase(s); writeln('Soubor ',soubor,' byl smazan!'); writeln('Chcete vybrat jiny soubor A/N'); if upcase(readkey)='A' then inicializace {otevre bud jiny soubor} else halt; {nebo ukonci program} end; procedure pridat; {prida polozku do souboru} begin append(s); repeat clrscr; for i:=1 to 4 do begin {generuje dotaz pomoci konstant} write('Zadejte ',polozka[i],': '); readln(zadani); write(s,zadani:15); end; writeln(s); writeln('----------------------'); writeln('Dalsi zaznam? (A/N)'); until upcase(readkey)<>'A'; close(s); end; begin { hlavni program - menu} inicializace; repeat clrscr; writeln('Soubor: ',soubor); writeln('---------------------'); writeln('Vypsat obsah ...... V'); writeln('Pridat polozku .... P'); writeln('Smazat soubor ..... S'); writeln('Zmena souboru ..... Z'); writeln('---------------------'); writeln('Konec ........... Esc'); odpoved:=upcase(readkey); case odpoved of 'V': vypis; 'P': pridat; 'Z': inicializace; 'S': vymaz; end; until odpoved=chr(27); end.