Pojam sloga najbolje ćemo razumeti kroz primer:
type dat = record
dan : 1 .. 31;
mesec: (jan, feb, mar, apr, maj, jun, jul, avg, sep, okt, nov, dec);
godina : integer;
end;
var Datum, danas, sutra : dat;
Gornjim iskazima smo prvo uveli (definisali) slogovni tip dat koji ima 3 komponente : dan, mesec i godina. Za svaku od komponenata sloga smo naveli kojeg je tipa. Drugim iskazom smo deklarisali tri promenljive (Datum, danas i sutra) tipa dat.
Komponente slogova u programskim iskazima možemo da obrađujemo kao samostalne promenljive. Na njih se pozivamo tako što navedemo :
1. ime slogovne promenljive,
2. Ime komponente
Ime sloga od imena komponente moramo da razdvojimo tačkom. Tako se, na primer, komponenta dan promenljive datum naziva : Datum.dan
Sledeći iskazi upisuju u promenljivu Datum datum 4. jun 2008.
Datum.dan := 4;
Datum.mesec := jun;
Datum.godina:= 2008;
Promenljivu Datum.dan možemo takođe da učitamo, na primer, sa:
read(Datum.dan)
To ne možemo da učinimo sa promenljivom datum.mesec. Ovde se javlja isti problem kao i kod čitanja i ispisivanja skalarnih tipova.
Operacije sa slogovima i iskaz WITH
Vrednost jednog sloga možemo da prenesemo u drugi slog ili po komponentama, ili sve zajedno. Iskaz datum:=danas; je ekvivalentan nizu iskaza
Datum.dan:=danas.dan;
Datum.mesec:=danas.mesec;
Datum.godina:=danas.godina;
Višestruko ponavljanje imena sloga možemo izbeći iskazom with. U iskazu with samo jednom navodimo ime sloga a dalje samo komponente. Promenljivoj danas možemo da dodelimo datum 4. jun 2008. ovako: with danas do
Begin
Dan := 1;
Mesec := jun;
Godina := 2008;
End;