Cyklus FOR je p°φkazem vnit°nφho programovacφho jazyka a mß jeden z t∞chto tvar∙:
for
°φdφcφ_prom∞nnß := v²raz1
to v²raz2 do
p°φkaz
for
°φdφcφ_prom∞nnß := v²raz1
downto v²raz2 do
p°φkaz
P°i provßd∞nφ cyklu se nejprve p°i°adφ °φdφcφ prom∞nnΘ hodnota v²razu1. Pak se ov∞°φ podmφnka cyklu: Cyklus konΦφ, pokud v tvaru s to
je hodnota °φdφcφ prom∞nnΘ v∞tÜφ ne₧ hodnota v²razu2, resp. pokud v tvaru s downto
je hodnota °φdφcφ prom∞nnΘ menÜφ ne₧ hodnota v²razu2. V opaΦnΘm p°φpad∞ se provede p°φkaz obsa₧en² v cyklu a hodnota °φdφcφ prom∞nnΘ se zv∞tÜφ (to) resp. zmenÜφ (downto
) o jedniΦku. PokraΦuje se nov²m testovßnφm podmφnky cyklu.
╪φdφcφ prom∞nnß i oba v²razy musφ b²t typu Integer. PoΦet opakovßnφ cyklu je roven rozdφlu hodnot obou v²raz∙ plus jedna. Je-li ve tvaru s to
v²raz1 menÜφ ne₧ v²raz2, resp. je-li ve tvaru s downto
vyraz1 v∞tÜφ ne₧ v²raz2, pak se p°φkaz obsa₧en² v cyklu neprovede ani jednou.
P°φklad:
if not Rec_cnt(MailMerge, pocetmm) then begin for i := 0 to pocetmm-1 do begin
//cyklus p°es vÜechny zßznamy z dotazu Set_status_text('Zapisuji do tabulky kontakt∙...');
Set_status_nums(i,pocetmm); Start_transaction; reck := Insert(Tschuzky); Signalize; if reck <> -1 then begin cis := MailMerge[i].cislo; ...
Viz takΘ: