Pole v programovaní je súbor premenných rovnakého typu, ktoré majú číselné indexy. Ak potrebujeme zaznamenať napríklad 10 rovnakých položiek, nebudeme pre každú osobitne definovať meno premennej. Každé pole si musíme vopred nadefinovať a dať mu samostatne rozlišovací názov, pod ktorým bude v programe volané. Hneď vedľa názvu v zátvorke musíme zadať jeho rozsah. Tak isto budeme mať v poli nadefinovaný jeho typ (integer = celočíselný, char = znakový a pod.).
Pole môžeme schematicky nadefinovať takto:
Var Názov_poľa:array[začiatok..koniec] of typ premenných;
kde: názov_poľa musí byť zadaný programátorom a musí byť jednoznačný, to znamená, že sa nesmie v jednom programe použiť ten istý názov pre viacero polí. Názov poľa sa od ďalšej časti príkazu oddeľuje :. array je kľúčové slovo jazyka Pascal a definuje sa ním pole [začiatok..koniec] ide o celočíselné hodnoty, ktoré sú vlastne indexami. Medzi začiatočný a koncový index sa píšu .. (dve bodky). Začiatok predstavuje číslo prvého prvku a koniec číslo posledného prvku. Of druh premennej. Tu sa udáva typ premennej. Môže byť napr: integer – celočíselný, alebo string – obsahuje reťazec ľubovoľných znakov – napríklad meno. ; predstavuje oddeľovač na ukončenie riadku programu.
Pole obsahujúce celé čísla od 1 do 10 vytvoríme takto: Var Pole1: array[1..10] of integer; Pole obsahujúce reťazce znakov, ktoré majú indexy od 1 do 100 vytvoríme takto: Var Pole2: array[1..100] of string;
V príklade používam názov poľa pole1 a pole2 preto s rôznymi názvami, aby sme sa vyvarovali tomu, že jeden názov poľa použijeme pre viac druhov premenných.
Pole je teda súbor prvkov rovnakého typu, kde jednotlivé prvky nasledujú za sebou a jeho hodnoty sa môžu opakovať. Môžeme povedať, že obsahuje niekoľko prvkov s indexmi (napr: a[1], a[2], ...a[i]).
Práca s prvkami
K prvkom v poli pristupujeme pomocou názvu poľa, za ktorým nasleduje index v hranatej zátvorke. Ovocie[0] := “jablko“; Ovocie[1] := “hruška“; Ovocie[2] := “slivka“; Writeln (ovocie[0], ` `, ovocie[1], ` `, ovocie[2];
Príklad vypíše:
jablko hruška slivka
Nasledujúci príklad ukazuje, ako najprv získame od užívateľa 5 čísel a potom ich vypíšeme v opačnom poradí.
program polia; názov programu polia var premenná c: integer; c: celočíselná pole: array[1..5] of integer; pole index pola od 1 – 5 celočíselné begin začiatok { ziskavanie } for c := 1 to 5 do begin pre c od 1 do 5 začni writeln('Zadajte ', c, '. cislo.'); vytlač riadok pre zadanie vstupnej hodnoty c readln(pole[c]); čítaj v riadku premennú c end; koniec { vypis cez cyklus for..downto }
writeln('Opacny vypis:'); napíš riadok
for c := 5 downto 1 do pre c od 5 do 1 write(pole[c],' '); napíš obsah poľa c end. koniec
Všimnite si prosím, že údaje sa zadávajú tak, že poradové číslo poľa narastá. Naopak, pri zobrazení získaných údajov sme zadali požiadavku, aby nami zadané údaje zobrazil vo vzostupnom poradí – od posledne zadaného po prvý zadaný údaj. Polia sú z hľadiska programovania veľmi významné nakoľko nám zjednodušujú a skracujú samotný zápis poľa. Treba však s nimi narábať veľmi opatrne, aby sme sa nezamotali. Môžeme totiž zadávať jedno, dvoj a viacrozmerné polia.