Proses Pengulangan
Perulangan memungkinkan kita mengeksekusi satu atau lebih baris kode sebanyak yang kita kehendaki. Terdapat tiga perintah di Visual Foxpro yang dipakai untuk perulangan, yaitu :

Perintah DO WHILE – ENDDO
Perintah ini mengeksekusi perintah-perintah yang ada didalam loop kondisional. Perulangan akan dilakukan terus menerus selama kondisi tersebut terpenuhi (.T. atau Benar).

Sintak dari perintah pengulangan tersebut adalah :
DO WHILE
…………………….
……………………. Bagian program yang akan diulang
…………………….
ENDDO

Pengulangan tersebut akan dilakukan bila kondisi benar. Pengulangan dengan kondisi ini dapat pula menggunakan kondisi .T., yaitu :
DO WHILE .T.
…………………….
……………………. Bagian program yang akan diulang
…………………….
[Loop]
[Exit]
ENDDO

Contoh :
x=1
DO WHILE x <= 20
? x
x=x+1
ENDDO

Pengulangan EOF() dan BOF() Dalam Proses Berulang
Proses pengulangan dapat dilakukan dalam memproses record-record dalam suatu tabel satu persatu hingga habis. Untuk membatasi pengulangan biasa digunakan fungsi EOF() (End Of File) dan BOF() (Begin Of File). Fungsi tersebut akan memberikan fungsi nilai logika .T. bila pointer telah berada diakhir file.

Bentuk pengulangan untuk memproses file data sampai habis :
DO WHILE.NOT.EOF()
…………………….
……………………. Bagian program yang akan diulang
…………………….
ENDDO

Perintah FOR . . . ENDFOR
Perulangan ini akan mengeksekusi perintah-perintah sebanyak yang kita tentukan. Nilai yang kita tentukan merupakan nilai tetap/konstanta.
Sintak dari perintah pengulangan tersebut adalah :
FOR <var>=<nilai_awal> TO <nilai_akhir>
…………………….
……………………. Bagian program yang akan diulang
…………………….
ENDFOR

Contoh :
FOR v_angka = 1 TO 10
? v_angka
ENDFOR

Perintah SCAN . . . ENDSCAN
Perintah ini memindahkan pointer record melewati tabel yang sedang dipilih dan mengeksekusi blok perintah setiap kali record memenuhi syarat kondisi yang ditentukan.
Sintak dari perintah pengulangan tersebut adalah :
SCAN [FOR <kondisi1>] [WHILE <kondisi2>]
…………………….
……………………. Bagian program yang akan diulang
…………………….
[loop]
[Exit]
ENDSCAN

Contoh :
SCAN FOR kota = “Tasikmalaya”
? nama, jurusan
ENDSCAN

 

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s