You are on page 1of 31

STRUKTUR DASAR

ALGORITMA

By Pulung Surya Prayoga


L2H008059

exit
Struktur Runtutan (Sequence Structure)

Struktur Percabangan (Selection Structure)

Struktur Perulangan (Repetition Structure)

exit back
STRUKTUR RUNTUTAN
 Dengan Struktur runtunan, berarti :
 Setiap instruksi akan dikerjakan satu persatu
 Setiap instruksi dilaksanakan tepat satu kali, tidak ada instruksi
yang diulang maupun tidak dilaksanakan
 Urutan instruksi yang dilaksanakan pemroses sama dengan
urutan aksi sebagaimana yang tertulis di dalam teks
algoritmanya
 Akhir dari instruksi terakhir merupakan akhir algoritma
 Bila runtunan instruksi dalam algoritma berturut-turut
dilambangkan dengan A1, A2, A3, A4, dan A5, maka
pelaksanaan instruksi tersebut adalah :
A1→A2→A3→A4→A5
Contoh

back
STRUKTUR PERCABANGAN
 Pernyataan percabangan memungkinkan suatu pernyataan
dieksekusi hanya jika suatu kondisi terpenuhi atau tidak terpenuhi
Contoh :
 Jika mau nonton film, maka belilah tiketnya
 Jika suatu bilangan habis dibagi 2, maka bilangan itu adalah
bilangan pastilah bilangan genap
 Bentuk instruksi percabangan
 Instruksi IF
 Pernyataan IF Sederhana
 Pernyataan IF-ELSE
 Pernyataan IF Bersarang
 Instruksi CASE

back
STRUKTUR PERULANGAN
 Pemrograman untuk melakukan suatu
proses yang berulang-ulang, jika suatu
kondisi dipenuhi atau tidak
 Proses ini biasanya digunakan, untuk :
 Mengulang proses pamasukan data
 Mengulang proses perhitungan
 Mengulang proses penampilan hasil
pengolahan data

back next
 Struktur perulangan terdiri dari 2 bagian :
 Kodisi pengulangan, yaitu ekspresi boolean
yang harus dipenuhi untuk melaksanakan
pengulangan
 Badan (body) pengulangan, yaitu satu atau
lebih aksi yang akan diulang
 Disamping itu biasanya disertai dengan :
 Inisialisasi, yaitu aksi yang dilakukan sebelum
pengulangan dilakukan pertama kali
 Terminasi, yaitu aksi yang dilakukan setelah

pengulangan selesai dilaksanakan

back next
 Bentuk instruksi perulangan :
 Instruksi FOR - NEXT
 FOR-NEXT Tunggal
 FOR-NEXT Tersarang

 Instruksi WHILE – WEND


 Instruksi DO - LOOP
 DO WHILE - LOOP
 DO UNTIL - LOOP

 DO – LOOP WHILE

 DO – LOOP UNTIL

back
Contoh
1. Algoritma untuk menghitung luas segitiga
Input(alas,tinggi)
Luas ? 1/2*alas*tinggi
Output(Luas)
5. Algoritma untuk menghitung sisi miring segitiga siku siku
Input(alas,tinggi)
Sisimiring? sqrt(alas^2 +tinggi^2)
Output(Sisimiring)
9. Algoritma untuk mengkonversi input Jam, Menit, dan Detik, ke
total detik
Input(Jam,Menit,Detik)
TotalDetik ? Jam*3600 + Menit*60 + Detik
Output(TotalDetik)

back
Instruksi If
 Secara umum flow chartnya sebagai berikut :

If condition

statement true Statement false

statement

back
Pernyataan if sederhana
 Bentuk:
IF <kondisi> THEN
<pernyataan>
ENDIF
 Pernyataan IF dengan Syarat Tunggal
Instruksi untuk memeriksa sebuah kondisi saja
Contoh :
IF komentar$=”coba” THEN
Output(“Anda memasukan kata yang benar”)
ENDIF

back next
 Pernyataan IF dengan Syarat Majemuk
Digunakan operator AND dan OR
Contoh :
IF nilai = “A” OR nilai = “B” THEN
Output(“Anda dapat mengikuti tes asisten”)
ENDIF
atau
IF nilai<=100 AND nilai>=80THEN
Output(“Nilai mata kuliah Anda A”)
ENDIF

back next
 Pemeriksaan Data String
Digunakan operator >, >=, <, <=, =, <> untuk
mendeteksi nilai ASCII dari data tersebut
Contoh :
IF sandi$=”Hs” THEN
Output(“Silahkan akses program ini”)
ENDIF
IF data$<”a” THEN
Output(“Huruf kapital”)
ENDIF

back
Pernyataan if-else
 Bentuk:
IF <kondisi> THEN
<pernyataan_1>
ELSE
<pernyataan_2>
ENDIF

back next
 Contoh :
IF x>0 THEN
Output(“X adalah bilangan positif”)
ELSE
Output(“X adalah bilangan negatif”)
ENDIF
IF tahun mod 4=0 THEN
Output(“Tahun tersebut tahun kabisat”)
ELSE
Output(“Bukan tahun kabisat”)
ENDIF

back
Pernyataan if bersarang
 Bentuk :
IF <kondisi_1> THEN
<pernyataan_1>
ELSE
IF <kondisi_2> THEN
<pernyataan_2>
ELSE
IF <kondisi_3> THEN
<pernyataan_3>
...
ELSE
<pernyataan_m>
ENDIF
ENDIF
ENDIF
back next
 Contoh :
IF beli>=100000 THEN
Output(“Diskon 10%”)
ELSE
IF beli>=500000 THEN
Output(“Bonus piring”)
ELSE
IF beli>=100000 THEN
Output(“Bonus gelas”)
ELSE
Output(“Tidak ada bonus”)
ENDIF
ENDIF
ENDIF

back
Instruksi case
 Alternatif dari pernyataan IF untuk masalah dengan pilihan ganda
 Semua masalah yang bisa CASE pasti bisa ditangani oleh IF, tetapi tidak
sebaliknya
 Bentuk:
SELECT CASE <ekspresi>
CASE <ekspresi_1>
<blok instruksi_1>
[CASE <ekspresi_2>
<blok instruksi_2>
...
[CASE ELSE]
<blok instruksi_m>
END SELECT

back
Instruksi FOR NEXT
 Digunakan untuk mengeksekusi suatu baris/blok
instruksi secara berulang-ulang selama kondisi terpenuhi
 Kondisi yang digunakan untuk menguji hanya sebatas
perhitungan menambah/mengurangi isi variabel counter
dengan STEP tertentu
 Jumlah perulangan diketahui secara pasti (n kali)
 Jumlah perulangan = nilai_akhir – nilai_awal + 1
 Bentuk instruksi :
FOR variable_counter = nilai_awal TO nilai_akhir [STEP nilai naik/turun]
<blok instruksi/pernyataan>
NEXT variable_counter

back
Instruksi FOR-NEXT tunggal
 Instruksi untuk perulangan yang hanya
menggunakan sebuah counter
 Contoh :
 menampilkan bilangan bulat 1 ..100
 menampilkan “hallo” 10 kali
 menampilkan angka 0 .. n
 menjumlahkan deret 1+2+3+…+n
 menghitung rata-rata bilangan
 menghitung perpangkatan (an)
 menghitung faktorial (n!)

back
Instruksi FOR-NEXT bersarang
 Urutan instruksi dimulai dari kalang yang
paling dalam
 Syarat yang harus dipenuhi :
 Setiap kalang tidak boleh menggunakan
variabel counter yang sama
 Antara kalang-kalang tersebut tidak boleh
saling berpotongan (overlapping)

back
Kalang
 Kalang yang berpotongan, contohnya :
FOR I = 1 TO 10
FOR J = 1 TO 10
PRINT I,J
NEXT I
NEXT J
 Kalang yang menggunakan variabel counter yang sama, contohnya:
FOR J = 1 TO 10
FOR J = 1 TO 10
PRINT J,J
NEXT J
NEXT J
 Kalang yang tersarang, contohnya :
FOR I = 1 TO 10
FOR J = 1 TO 10
PRINT J,I
NEXT J
back
NEXT I
Instruksi WHILE-WEND
 INSTRUKSI
 Proses berulang selama sebuah kondisi terpenuhi
 Proses berulang tidak diketahui jumlahnya
 Bentuk Instruksi :
WHILE <kondisi>
<blok pernyataan>
WEND
 Bentuk ini identik dengan DO WHILE – LOOP

back
Instruksi DO-LOOP
 INSTRUKSI DO - LOOP
 Mempunyai fungsi yang sama dengan WHILE–WEND, yaitu melakukan
operasi perulangan, tetapi untuk penulisan kondisinya dapat dilakukan
secara fleksibel
 Proses berulang tidak diketahui jumlahnya
 Bentuk Umum:
 DO [ WHILE / UNTIL kondisi ]
LOOP
 DO
LOOP [ WHILE / UNTIL kondisi ]
 Perbedaannya :
 Kondisi diperiksa dulu, bila memenuhi syarat, maka instruksi akan
dilaksanakan.
 Minimal proses instruksi dilaksanakan sekali, baru pemeriksaan kondisi
penulisan
back
Instruksi DO WHILE-LOOP
 Instruksi DO WHILE – LOOP
 Pengulangan dilakukan selama kondisi bernilai benar
 Pengujian dilakukan sebelum blok pernyataan
dijalankan
 Bentuk Instruksi :
DO WHILE <kondisi>
<blok pernyataan>
LOOP
back next
 Contoh:
Algoritma untuk menjumlahkan deret 1 + 2 + 3 +….+ N
Input (N)
Jml ← 0
Angka ← 1
DO WHILE Angka <=N
Jml ← Jml + Angka
Angka ← Angka + 1
LOOP
Output(Jml)
END

back
Instruksi DO UNTIL-LOOP
 Instruksi DO LOOP - UNTIL
 Pengulangan dilakukan selama kondisi bernilai salah
 Pengujian dilakukan setelah blok pernyataan
dijalankan, sehingga minimal sekali pernyataan akan
dieksekusi
 Bentuk Instruksi :
DO LOOP
<blok pernyataan>
UNTIL<kondisi>
back next
 Contoh :
Algoritma untuk menjumlahkan deret 1+2+3+….+N
Input (N)
Jml ← 0
Angka ← 1
DO UNTIL Angka >N
Jml ← Jml + Angka
Angka ← Angka + 1
LOOP
Output(Jml)
END

back
Instruksi DO LOOP-WHILE
 Pengulangan dilakukan selama kondisi bernilai
benar
 Pengujian dilakukan setelah blok pernyataan
dijalankan, sehingga minimal sekali pernyataan
akan dieksekusi
 Bentuk Instruksi :
DO LOOP
<blok pernyataan>
WHILE <kondisi>

back next
 Contoh :
Algoritma untuk menjumlahkan deret 1+3+5+….+Un
Input(Un)
Jml ← 0
Angka ← 1
DO
Jml ← Jml + Angka
Angka ← Angka + 2
LOOP WHILE Angka <=Un
Output(Jml)
END

back
Instruksi DO LOOP-UNTIL
 Pengulangan dilakukan selama kondisi bernilai
salah
 Pengujian dilakukan setelah blok pernyataan
dijalankan, sehingga minimal sekali pernyataan
akan dieksekusi
 Bentuk Instruksi :
DO LOOP
<blok pernyataan>
UNTIL<kondisi>

back next
 Contoh :
Algoritma untuk mengakses, dengan password maksimal melakukan kesalahan 3 kali

Password$ ← ”sP”
DO
IF N>3 THEN
EXIT DO
END IF
Input(Pass$)
N=N+1
LOOP UNTIL Pass$ = Password$
IF N>3 THEN
Output(“Akses ditolak”)
ELSE
Output(“Selamat Bergabung”)
END IF
END

back

You might also like