2. 10.12.2012
PROMĚNNÉ
Proměnná je místo v paměti, jehož hodnota se
může při provádění programu měnit. Proměnná
může obsahovat hodnotu libovolného datového
typu a tato hodnota může být kdykoli změněna.
Proměnné existují pouze po dobu, kdy je
aplikace spuštěna, nebo v programu a
proceduře, ve které jsou vytvořeny (tzv. lokální
proměnná), pokud nezadáte jinak příkazy
LOCAL, PRIVATE nebo PUBLIC (viz. nápověda
FoxPro)
VOŠ pro praxi 2
reg. č.: CZ.1.07/2.1.00/32.0044
3. 10.12.2012
PODMÍNĚNÉ PROVÁDĚNÍ PŘÍKAZŮ
Rozvětvení programu dle jednoduché podmínky –
pokud je <podmínka – logický výraz> splněna (vrací
hodnotu .T.) provedou se <příkazy1>, pokud podmínka
není splněna provedou se <příkazy2>
IF <podmínka – logický výraz>
<příkazy1>
[ELSE
<příkazy2>]
ENDIF
VOŠ pro praxi 3
reg. č.: CZ.1.07/2.1.00/32.0044
4. 10.12.2012
rozvětvení programu na více úseků dle různých podmínek. V případě, že je
splněna některá podmínka, v pořadí další podmínky se už nekontrolují a
program pokračuje za ENDCASE
DO CASE
CASE <1.podmínka-log. výraz>
<1.příkazy>
CASE <2.podmínka-log. výraz>
<2.příkazy>
CASE <n.podmínka-log. výraz>
<n.příkazy>
[OTHERWISE
<příkazy>]
ENDCASE
VOŠ pro praxi 4
reg. č.: CZ.1.07/2.1.00/32.0044
5. 10.12.2012
PROGRAMOVÉ CYKLY
Umožňují část programu zopakovat dokud je splněná podmínka
DO WHILE <podmínka – logický výraz>
<příkazy>
[LOOP]
[EXIT]
ENDDO
[EXIT] - uvedením v kódu programu se provádění cyklu přeruší a
program se vrací za řádek s ENDDO (provádění cyklu bude přerušeno)
[LOOP] - uvedením v kódu programu se provádění cyklu přeruší a
program se vrací na řádek s DO WHILE (znovu bude vyhodnocena
podmínka)
VOŠ pro praxi 5
reg. č.: CZ.1.07/2.1.00/32.0044
6. 10.12.2012
SCAN [obor] [FOR<log. výraz>] [WHILE<log.výraz>]
<příkazy>
[LOOP]
[EXIT]
ENDSCAN
umožňují část programu zopakovat dokud není dosaženo konce souboru nebo provádí část
programu přes rozsah záznamů omezený parametrem OBOR nebo podmínkou
FOR, WHILE
[LOOP] - uvedením v kódu programu se provádění cyklu přeruší a program se vrací na
řádek s DO WHILE (znovu bude vyhodnocena podmínka)
[EXIT] - uvedením v kódu programu se provádění cyklu přeruší a program se vrací za
řádek s ENDDO (provádění cyklu bude přerušeno)
[FOR <log. výraz>] – prochází záznamy od aktuálního do konce a příkazy provede
pouze pro záznamy u kterých je splněna podmínka
[WHILE <log. výraz>] – prochází záznamy od aktuálního záznamu do záznamu, který
jako poslední splňuje uvedenou podmínku a pro tyto záznamy vykoná příkazy.
[Obor] - po uvedení parametru obor provádění příkazů v cyklu takto:
RECORD n - záznam č. n
ALL - všechny záznamy
REST - od aktuálního záznamu do konce
NEXT n - n záznamů počínaje aktuálním
VOŠ pro praxi
reg. č.: CZ.1.07/2.1.00/32.0044 6
7. 10.12.2012
POČÍTADLO
Úsek programu několikrát zopakuje
FOR <počitadlo> = <počátek> TO <konec> [STEP<krok>]
<příkazy>
[LOOP]
[EXIT]
ENDFOR
<počitadlo> - libovolná proměnná jejíž hodnota se automaticky v cyklu
zvyšuje o zadaný krok, dokud nedosáhne konečné hodnoty
<počátek> - nastavení počítadla na počáteční hodnotu
<konec> - maximální hodnota do které se počítadlo zvyšuje o zadaný krok
– pokud je max.hodnota v cyklu překročena, pogram pokračuje za ENDFOR
[STEP<krok>] - hodnota o kterou se zvyšuje počítadlo - lze uvést i zápornou
hodnotu (pokud není uvedeno krok = 1)
VOŠ pro praxi 7
reg. č.: CZ.1.07/2.1.00/32.0044