1 program hory_a_niziny; 2 3 var vyska,nejVyska,Radek,Sloupec:word; 4 more,nizina,hory:word; 5 soubor:text; 6 7 begin 8 more:=0; 9 nizina:=0; 10 hory:=0; 11 nejVyska:=0; 12 assign(soubor,'soubor.txt'); 13 reset(soubor); 14 Radek:=1; 15 repeat begin 16 Sloupec:=1; 17 repeat begin 18 read(soubor,vyska); 19 case vyska of 20 0:inc(more); 21 1..10:inc(nizina); 22 else 23 inc(hory); 24 end; 25 if vyska>nejVyska then 26 nejVyska:=vyska; 27 inc(Sloupec); 28 end until eoln(soubor); {funkce eoln vrátí TRUE pokud je ukazatel na konci řádku} 29 inc(Radek); 30 end until eof(soubor); {funkce eof vrátí TRUE pokud je ukazatel na konci souboru} 31 close(soubor); 32 writeln('moře zabírá celkem ',more*100/(more+nizina+hory):4:1,'% povrchu' ); 33 writeln('nížina zabírá celkem ',nizina*100/(more+nizina+hory):4:1,'% povrchu' ); 34 writeln('hory zabírají celkem ',hory*100/(more+nizina+hory):4:1,'% povrchu' ); 35 write('Nejvyšší bod na mapě má výšku ',nejVyska,' a souřadnice'); 36 37 {Pro případ, že nejvyšších bodů je více} 38 reset(soubor); 39 Radek:=1; 40 repeat begin 41 Sloupec:=1; 42 repeat begin 43 read(soubor,vyska); 44 if vyska=nejVyska then 45 write(' [',Radek,',',Sloupec,']'); 46 inc(Sloupec); 47 end until eoln(soubor); {funkce eoln vrátí TRUE pokud je ukazatel na konci řádku} 48 inc(Radek); 49 end until eof(soubor); {funkce eof vrátí TRUE pokud je ukazatel na konci souboru} 50 writeln; 51 close(soubor); 52 end.