jj. S tím kon máš pravdu.
Pokud chceš zarovnávat doleva, jde to udělat pomocí Lenght(vrací počet znaků řetězce) např. takto:
writeln(I: 3, ':'+ pom^.meno,' ':11 - Length(pom^.meno), pom^.priez, pom^.rocnik:13 - Length(pom^.priez),'. rocnik');
Break není násilné přerušení. Pouze předčasně ukončí cyklus (For/repeat/while) a program pokračuje následujícím příkazem za cyklem. Nepatří do stejné skupiny jako příkazy Goto či Halt.
MemAvail a MaxAvail vracejí shodné hodnoty, pokud nedojde k fragmentaci paměti (t.j. dokud je veškerá dostupná pamět v souvislém bloku). To je sice pravidlem po spuštění programu, ale po delší práci (alokování/uvolňování různě velkých položek) se paměť může fragmentovat. Potom obě funkce vracejí různé hodnoty. (MaxAvail <= MemAvail)
3971 položek - to závisí na dostupné konvenční paměti. Bude se tedy lišit při spuštění na různých počítačích, a bude se zmenšovat, jak tvůj program poroste. Pokud je to málo, budeš muset požít nějaký úspornější formát (String zabere v paměti 256 Bytes nezávisle na tom, kolik "užitečných" znaků obsahuje)