DO WHITE… END DO командасы
Циклдің орындалуын ұйымдастыру үшін қолданылады.
DO WHITE <циклдің жалғасу шарты>
<шарт шын болғанда команда орындалады>
END DO
Егер шарт жалған болса, онда END DO-ден кейінгі амалдар орындалады.
Мысалы:
USE Stud
INDEX ON Name TO IName
Seek ‘Hо’
IF FAUND()
DO WHILE name = ‘Ho’
? condit - condit өрісін табылған жазбалардан табу.
SKIP
END DO
? “Больше данных имен нет!”
END IF
USE
Name өрісі бойынша индекстелген Stud кестесінде ос өріс бойынша “Hо” басталып жазбаларды табу.
FOR … ENDFOR командасы
Бірнеше циклдер ұйымдастыруға осы команда қолданылады.
FOR <переменная>=<начальное значение> то <конечные значение>[step <шаг>] <команды>
ENDFOR немесе NEXT
Алдымен Step мәніне байланысты өту,(үнсіздік келісім бойынша шаг=1), кейін айнымалының мәніy тексеру.
Мысал. 6 файлды көшіру керек және атаулары массив элементтері ретінде анықталсын
* дискке көшірілетін массив файлдары беріледі.
CDir = a:
DIMENSION cfile (6)
cfile (1) = “addhelp_ru.prg”
cfile (2) = “addhelp_ru.fxp”
cfile (3) = “poscursor.prg”
cfile (4) = “poscursor.fxp”
cfile (5) = “heelfrom.scx”
cfile (6) = “heelfrom.sct”
FOR I=1 TO 6
COPY FILE (cfile(I)) TO (CDir)
ENDFOR
SCAN… ENDSCAN кестені сканирлеу командасы
Бұл команда кесте бойынша басынан соңына дейін немесе көрсетілген шекарада жылуға арналған.Кестенің әрбір жазбасына көрсетілген шарттар сәйкес болса,онда команда орындалады.Әрбір ENDSCAN команда орындалған сайын жазба көрсеткіші бір жазбаға алға жылжиды.
Жазылу синтаксисі:
SCAN [граница] [FOR-условие] [WRITE -условие] [LOOP] [EXIT]
<командалар>
ENDSCAN
Мысал: Контрактпен оқитын студенттердің оқу төлемінің қарызын әрбір жарты жылда есептеу керек болсын,( егер SUM>0), яғни debt өрісінің мәнін үлкейту (теріс мәндерге)
USE Stud
SCAN FOR SUM>0
REPLACE debt WITH debt – (Sum [2])
ENDSCAN
USE
Аяқталған циклдан шығу үшін EXIT командасы қолданылады және ол басқаруды ENDSCAN кейінгі командаларға береді.
Достарыңызбен бөлісу: |