Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Algoritma & Pemrograman 1B

Presentasi serupa


Presentasi berjudul: "Algoritma & Pemrograman 1B"— Transcript presentasi:

1 Algoritma & Pemrograman 1B
M6. Pengulangan Proses By : Guntur Eka Saputra, ST., MMSI.

2 Subjectives FOR-NEXT DO WHILE-LOOP DO UNTIL-LOOP DO LOOP-WHILE
DO LOOP-UNTIL WHILE-WEND

3 PERNYATAAN GOTO

4 PERNYATAAN GOTO Berfungsi untuk mengarahkan eksekusi ke satu baris.
Pernyataan ini memungkinkan eksekusi pernyataan- pernyataan tidak secara sekuensial seperti pada normalnya. Bentuk Umum : GOTO label Label : dapat berupa nomor baris atau suatu nama label. Dalam hal ini GOTO akan menyebabkan eksekusi dilanjutkan ke baris yang diawali dengan label.

5 PERNYATAAN GOTO ‘**************************************************************** ‘* LONCAT.BAS CLS PRINT “A” PRINT “B” GOTO Akhir: PRINT “C” PRINT “D” Akhir: PRINT “E” PRINT “F” END

6 PERNYATAAN GOTO Pada contoh berikut ini, GOTO beserta IF digunakan untuk mengimplementasikan penampilan tulisan “QBASIC” sebanyak sepuluh kali. Bagaimana programnya ???

7 PERNYATAAN GOTO ‘**************************************************************** ‘* ULANG.BAS CLS i% = 1 Ulang: IF i% = 10 THEN GOTO Akhir PRINT “QBasic” i% = i% + 1 GOTO Ulang Akhir: END

8 PERNYATAAN GOTO Note : Pernyataan GOTO sebaiknya dihindari sedapat mungkin, karena cenderung membuat program menjadi sulit dibaca. Banyak pernyataan lain yang dapat mengurangi pemakaian GOTO.

9 PERNYATAAN FOR

10 PERNYATAAN FOR Bentuk sederhana dari pernyataan FOR: Dalam hal ini:
Variabel (biasa disebut variebel pencacah) harus bertipe bilangan (bulat maupun pecahan) Setiap kali sesudah blok pernyataan dieksekusi, variabel akan dinaikkan sebesar satu NilaiAwal harus lebih besar daripada NilaiAkhir FOR Variabel = NilaiAwal TO NilaiAKhir [Blok pernyataan] NEXT [Variabel]

11 PERNYATAAN FOR ‘**************************************************************** ‘* FOR1.BAS CLS FOR i% = 1 TO 10 PRINT i% NEXT i% END

12 PERNYATAAN FOR Perlu diketahui, bagian: NEXT i%
bisa saja ditulis menjadi: NEXT saja Seperti pada contoh : FOR i% = 1 TO 10 ...

13 PERNYATAAN FOR Nilai akhir dari variabel i% (sesudah pengulangan berakhir) sebenarnya adalah sama dengan nilai akhir yang ditentukan setelah TO ditambah 1. Perhatikan contoh program berikut ini:

14 PERNYATAAN FOR ‘**************************************************************** ‘* FOR2.BAS CLS FOR i% = 1 TO 10 NEXT i% PRINT “Nilai setelah keluar dari FOR = ”, i% END

15 PERNYATAAN FOR Contoh berikut ini menunjukkan cara menampilkan tulisan “Qbasic ” sebanyak sepuluh kali. Contoh ini merupakan alternatif yang lebih baik dari contoh sebelumnya.

16 PERNYATAAN FOR ‘**************************************************************** ‘* FOR3.BAS CLS FOR i% = 1 TO 10 PRINT “QBasic” NEXT i% END

17 PERNYATAAN FOR Adapun contoh berikut menunjukkan penggunaan FOR untuk membuat penundaan eksekusi

18 PERNYATAAN FOR ‘**************************************************************** ‘* FOR4.BAS CLS PRINT “Tunggu Sebentar ...” FOR i% = 1 TO NEXT i% PRINT “Selesai” END

19 PERNYATAAN FOR Penggunaan STEP
Diakhir dari baris FOR dapat ditambahkan bagian berupa : STEP NilaiKenaikan NilaiKenaikan menyatakan nilai yang digunakan untuk menaikkan nilai variabel pencacah setiap kali bagian yang terletak di dalam FOR-NEXT dieksekusi. Contoh :

20 PERNYATAAN FOR ‘**************************************************************** ‘* FOR5.BAS CLS FOR i% = 1 TO 10 STEP 2 PRINT i% NEXT i% PRINT “Selesai” END

21 PERNYATAAN FOR FOR Bersarang
Pernyataan FOR juga dapat diletakkan di dalam FOR yang lain. Seperti biasa disebut juga sebagai FOR bersarang (nested for) Sebagai contoh, penggunaannya yaitu untuk membentuk tabel perkalian sebagai berikut:

22 PERNYATAAN FOR n N Bagian di atas dapat diperoleh dengan menggunakan program berikut ini!

23 PERNYATAAN FOR ‘**************************************************************** ‘* FOR6.BAS CLS INPUT “Nilai n = ”; n% FOR i% = 1 TO n% FOR j% = 1 TO i% PRINT USING “### ”; i% + j%; NEXT j% PRINT NEXT i% PRINT “Selesai” END

24 PERNYATAAN DO WHILE-LOOP

25 PERNYATAAN DO WHILE-LOOP
Bentuk pernyataan ini: Pengulangan eksekusi terhadap BlokPernyataan dilakukan sesama kondisi bernilai benar. Pengujian dilakukan sebelum blok pernyataan dijalankan. DO WHILE kondisi [Blok Pernyataan] LOOP

26 PERNYATAAN DO WHILE-LOOP
Program berikut ini menunjukkan pemakaian DO WHILE- LOOP untuk menampilkan bilangan ganjil antara 1 sampai dengan 10. Bagaimana programnya??

27 PERNYATAAN FOR ‘**************************************************************** ‘* DO1.BAS CLS i% = 1 DO WHILE i% < 10 PRINT i% i% = i% + 2 LOOP PRINT “Selesai” END

28 PERNYATAAN FOR Tampak, agar Bil% naik sebesar 2, maka di dalam blok pernyataa n di dalam DO WHILE – LOOP harus ada perintah yang secara eksplisit menaikkan 10%. Bil% = Bil% + 2 Perintah seperti ini cukup diselesaikan dengan menggunakan STEP 2 pada pernyataan FOR, kalau FOR yang digunakan.

29 PERNYATAAN DO UNTIL - LOOP

30 PERNYATAAN DO UNTIL - LOOP
Bentuk pernyataan ini : Dalam hal ini, Blok Pernyataan dieksekusi selama kondisi bernilai salah. DO UNTIL kondisi [Blok Pernyataan] LOOP

31 PERNYATAAN DO UNTIL - LOOP
Bentuk ini identik dengan : DO WHILE NOT kondisi [Blok Pernyataan] LOOP

32 PERNYATAAN DO – LOOP WHILE

33 PERNYATAAN DO – LOOP WHILE
Bentuk pernyataan ini: Perintah ini semacam DO WHILE – LOOP, Perbedaanya: DO [Blok Pernyataan] LOOP WHILE kondisi

34 PERNYATAAN DO – LOOP WHILE
Pada DO – LOOP WHILE kondisi diperiksa setelah BlokPernyataan dieksekusi. Minimal BlokPernyataanDO-LOOP WHILE akan dieksekusi sekali Pada DO WHILE – LOOP, ada kemungkinan BlokPernyataan tidak dieksekusi sama sekali, yaitu jika kondisi awal bernilai salah.

35 PERNYATAAN DO – LOOP UNTIL

36 PERNYATAAN DO – LOOP UNTIL
Bentuk pernyataan ini: DO [Blok Pernyataan] LOOP UNTIL kondisi

37 PERNYATAAN DO – LOOP WHILE
‘**************************************************************** ‘* VALIDASI.BAS CLS DO INPUT “Masukkan sebuah bilangan bulat (1..3) : ”; Bil% MasukkanBenar = (Bil% >= 1) AND (Bil% <= 3) IF NOT MasukkanBenar THEN PRINT “Masukkan salah. Ulangi” END IF LOOP UNTIL Masukan Benar PRINT “Oke..” END

38 PERNYATAAN WHILE - WEND

39 PERNYATAAN WHILE - WEND
Bentuk pernyataan ini: Bentuk ini identik dengan: DO WHILE kondisi [BlokPernyataan] LOOP WHILE kondisi [BlokPernyataan] WEND

40 PERNYATAAN FOR ‘**************************************************************** ‘* DO1.BAS CLS i% = 1 DO WHILE i% < 10 PRINT i% i% = i% + 2 LOOP PRINT “Selesai” END

41 Keluar dari Pengulangan Proses

42 Keluar dari Pengulangan Proses
Qbasic menyediakan fasilitas yang memungkinkan keluar dari loop tanpa menggunakan pernyataan GOTO. Pernyataan yang digunakan untuk keperluan ini adalah : EXIT DO : Untuk keluar dari semua bentuk DO EXIT FOR : Untuk keluar dari FOR-NEXT

43 Keluar dari Pengulangan Proses
Bentuk pernyataan ini: Contoh program yang menggunakan pernyataan EXIT FOR dapat dilihat sebagai berikut DO .... IF KondisiKeluar THEN EXIT DO ... END

44 Keluar dari Pengulangan Proses
‘**************************************************************** ‘* CARIDATA.BAS CLS JumData% = 5 DIM Nama$(JumData%) ‘Alokasi Array ‘Inisialisasi Data FOR i% = 1 TO JumData5% READ Nama$ (i%) NEXT i% ‘CariData INPUT “Nama yang dicari : ”; NamaX$ FOR i% = 1 TO JumData% IF Nama$ (i%) = NamaX$ THEN EXIT FOR END

45 Keluar dari Pengulangan Proses
Contoh eksekusi : Nama yang dicari : ASRI Data yang dicari tidak ditemukan Nama yang dicari : KARTIKA Nama ada pad anomor utuy 5

46 Pengulangan Tiada Henti

47 Pengulangan Tiada Henti
Sering kali karena kekeliruan dalam memberikan kondisi menyebabkan suatu proses berulang tanpa berhenti. Sebagai contoh ditunjukkan pada contoh berikut ini. FOR i% = 0 TO STEP 0 PRINT i% NEXT i%

48 Pengulangan Tiada Henti
Proses yang terus berulang pada contoh di slide sebelumnya, disebabkan adanya kesalahan dalam menuliskan nilai sesudah STEP, yang seharusnya berupa 10 tetapi ditulis menjadi 0. Jika keadaan demikian terjadi, And bisa menghentikan eksekusi program dengan menekan tombol Ctrl+Break

49 End of File


Download ppt "Algoritma & Pemrograman 1B"

Presentasi serupa


Iklan oleh Google