V pascalu existují dva základní druhy cyklů. Tím prvním je cyklus s určeným počtem opakování.
for promenna:=pocatecni to koncova do ...;
Cyklus s pevným počtem opakování. Tento cyklus obsahuje něco jako počítadlo (promenna). Při prvním průchodu cyklem se jí přiřadí hodnota pocatecni a při každém dalším se zvýší* o jednu, dokud není dosažena hodnota koncova. Řídící proměnná musí být ordinálního typu.
* Je možné hodnotu i snižovat a to nahrazením klíčového slova to slovem downto, pak ale musí být hodnota pocatecni vetsi nez koncova.
for i:=1 to 10 do begin {tento blok bude proveden desetkrat} end;
jednotka system obsahuje tyto funkce a procedury pro práci s řetězci a znaky:
Length(S:string):integer;
Vrací počet znaků v řetězci.
Chr(B:byte):char;
Vrací znak z tabulky ASCII podle osmi-bitové hodnoty parametru.
UpCase(C:char):char;
Převede malé písmeno na velké.
Copy(S:string;Index,Count:integer):string;
Vrací Count znaků řetězce S počínaje znakem na pozici Index .
Delete(var S:string;Index,Count:integer);
Odstraní Count znaků z řetězce S počínaje znakem na pozici Index.
Insert(source:string;var S:string;Index:integer);
Do řetězce S od pozice Index vloží řetězec source.
Str(X:číslo;var S:string);
Převede číslo X na řetězec S.
Val(S:string;var V:číslo;var Code:integer);
Převede řetězec S na číslo V. V případě chyby nastaví v Code číslo pozice znaku, který nelze převést.
Použití této jednotky je velmi jednoduché. Stačí ji uvést v seznamu použitých jednotek uses. Sama jednotka neobsahuje žádné procedury ani funkce. Jediná její činnost je, že při spuštění programu deklaruje textový soubor Lst a přiřadí jej zařízení LPT1. Samotný výstup na tiskárnu pak vypadá takto:
WriteLn(Lst,'Tento text se vytiskne');
Cvičení: Cvičení 8 Cvičení 9 Cvičení 10 Cvičení 11