Anda di halaman 1dari 23

RESUME MATERI

“Algoritma Runtunan, Percabangan, dan Perulangan”

Dari Video Youtube Minggu II

DOSEN PENGAMPU :

Defri Ahmad, S.Pd., M.Si

Nama : Ladyra Saskia Perdani

NIM : 20030039

JURUSAN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS NEGERI PADANG

2021
1. Algoritma Runtunan
Runtunan = dereta, barisan, jajaran
Algoritma Runtunan terdiri atas barisan intruksi, dimana:
 Setiap intruksi dikerjakan satu persatu
 Tiap intruksi dikerjakan satu kali
 Urutan intruksi dikerjakan sama dengan urutan penulisannya
 Urutan sangat penting
Flowchart :
Mulai

Intruksi 1

Intruksi 2

………..

Intruksi ke-n

End
Contoh :
Algoritma menghitung luas segitiga
Input : alas, tinggi
Output : luas
Flowchart : Pseudocode :
Mulai Algoritma luas segitiga
Variabel : a, t, L, real
Begin
Alas.. Input (a, t);
Tinggi… L=axt ;
2
Output (L)
Luas : a x t end
2

Luas

End
2. Algoritma Percabangan
Manusia dapat mempermudah pekerjaan melalui bantuan computer melalui perintah
“logis”, yaitu jelas benar / salahnya, jelas jalan cepat, jalan pelan atau berhenti.
Jenis percabangan :
 Percabangan benar atau salah (If…)
Percabangan yang melihat dua kondisi saja yaitu benar atau salah, contoh
warna rambut “hitam” atau “tidak hitam”
 Percabangan dengan pilihan yang lebih dari 2 (Case)
Percabangan dengan berbagai kondisi dalam sekali jalan, contoh jika merah
“berhenti”,kuning “jalan pelan-pelan”, hijau “jalan”
Percabangan Tersarang
 Merupakan percabangan berlapis maksudnya dalam suatu percabangan ada
percabangan lainnya
Contoh :
Rambut hitam atau tidak hitam
Jika rambutnya hitam, hidungnya mancung atau tidak
Jika tidak hitam berhenti

Flowchart Percabangan If
False True

Conditions
statements

Pseudocode Percabangan If
If (ekspresi boolean) statements1 ;
else statements2 ;
atau
If (ekspresi boolean) (
Statements1;
Statements2; blok statement1
…..)
else(
Statement3 ;
Statement4 ; blok statement2
….)
Jika ekspresi boolean menghasilkan nilai TRUE, maka statement atau blok statement1
atau blok statement1 yang akan dilaksanakan, jika tidak (FALSE) maka statement2 atau
blok statement2 yang akan dilaksanakan.
Flowchart Percabangan Case

Yes
Conditions1 Action1

No
Yes
Conditions2 Action2

.
. No
{other conditions and actions}

Yes
Conditions..n Action..n

No

“Else” Action

Pseudocode Percabangan Case


Case of (ekspresi) {
Case item-1 : statement-1 ;
Case item-2 : statement-2 ;
…..
Case item-n : statement-n ;
else
statement;

Percabangan Tersarang

Tidak If Benar
Kondisi1 Tidak If Benar
Else Else Kondisi2

Statement3 Statement2 Statement1

IF kondisi1 THEN
IF kondisi2 THEN
Statement1
Else
Statement2
Else
Statement3

Operasi Logika Pada Kondisi


 Adanya dua kondisi yang harus diperhatikan dalam satu waktu
 Operator AND atau OR atau XOR sangatlah berguna
 Operator Not
Contoh :
Jika 4<x<5, maka x diantara 4 dan 5

3. Algoritma Perulangan
 Suatu algoritma untuk menjalankan suatu perintah secara berulang hingga suatu
kondisi yang diminta terpenuhi.

Struktur Perulangan

1). Kondisi Pengulangan

2). Badan Pengulangan

Contoh :

1. Tuliskan kata “ganteng” 2000 kali


2. Timba sumur itu hingga airnya habis
3. Kalikan bilangan asli dari 1 hingga 1000
4. Ketika bukunya penuh berhenti menulis

Perulangan For

Nilai Awal

Tidak Pseudocode :

a€s for int to batas do perintah

ya

perintah
Perulangan While

Nilai Awal

Pseudocode :

Kondisi While kondisi do perintah

Perintah

Perintah Kondisi

Perulangan Repeat-Until

Nilai Awal Pseudocode :

Repeat

Perintah Perintah

Until

Perintah Kondisi

ya tidak

Kondisi
Laporan Hasil Diskusi

Struktur Penulisan Algoritma

Bagian yang harus ada dalam Algoritma yaitu Judul, Deklarasi, dan Bagian Algoritma Utama

a. Berikan Contoh dan Jelaskan Bagian2 Tersebut pada Contoh (Setidak 3 contoh)

b. Jelaskan bagian tersebut pada Penyajian dengan deskripsi, flowchart, dan Pseudo Code

Penjelasan :

a. Pada dasarnya, bagian algoritma disusun atas tiga bagian (blok) : bagian judul (header)
agoritma, bagian deklarasi, dan bagian deskripsi. Setiap bagian dapat diberi komentar untuk
memperjelas maksud teks yang dituliskan. Komentar biasanya ditulis menggunakan kurung
kurawal.

1)    Judul Algoritma

Judul algoritma adalah bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi)
tentang algoritma tersebut. Nama algoritma sebaiknya singkat, namun cukup menggambarkan
apa yang akan dilakukan oleh algoritma tersebut. Di bawah nama algoritma disertai dengan
penjelasan singkat (intisari) tentang apa yang dilakukan oleh algoritma. Penjelasan di bawah
nama algoritma sering dinamakan juga spesifikasi algoritma. Algoritma harus ditulis sesuai
dengan spesifikasi yang didefinisikan. { Penjelasan mengenai algoritma, yang berisi uraian
singkat mengenai apa yang dilakukan oleh algoritma }

Contoh :

Algoritma Luas_Persegi_Panjang

{ Algoritma menghitung luas persegi panjang }

Program Ucapan selamat datang

{ Program untuk menampilkan ucapan selamat datang kepada pengguna dengan masukan nama
pengguna}

Program HelloWorld

{ Program untuk mencetak "Hello, world" Masukan program ini tidak ada. Keluarannya adalah
tulisan 'Hello, world' tercetak di layar}

2)    Deklarasi
Di dalam algoritma, deklarasi nama adalah bagian untuk mendefinisikan semua nama yang
dipakai di dalam algoritma. Nama tersebut dapat berupa nama terapan, nama peubah, nama tipe,
nama prosedur dan nama fungsi. { Semua bahan dan alat yang dibutuhkan selama algoritma
dijalankankan, atau dalam algoritma meliputi variabel yang dipakai, nama tipe, konstanta, nama
prosedur dan nama fungsi didefinisikan di sini }

Contoh :

Deklarasi :

Panjang = integer {tipe data bilangan bulat}

Lebar = integer

Luas = real {tipe data bilangan pecahan}

Deklarasi :

nama : string

usia : integer

Contoh : (untuk Program Fahrenheit Celcius) 

Deklarasi :

F,C : real

x,y, step : integer

F,C,x,y, dan step adalah nama-nama perubah yang digunakan di dalam bagian algoritma. Nama-
nama peubah ini berserta tipenya harus diumumkan di bagian deklarasi sebelum mereka
digunakan.

3)    Deskripsi

Deskripsi adalah bagian terpenting dari struktur algoritma. Bagian ini berisi uraian langkah-
langkah penyelesaian masalah. Langkah-langkah ini dituliskan dengan notasi yang lazim dalam
penulisan algoritma. Setiap langkah algoritma dibaca dari langkah paling atas hingga langkah
paling bawah. Urutan penulisan menentukan urutan pelaksanaan perintah. { Semua langkah,
proses, atau statement algoritma dituliskan di sini, biasanya langkah-langkah diberikan
penomoran untuk memudahkan penelusuran dan organisasi) }

Contoh :

Deskripsi :
input (panjang, lebar)

luas <-- panjang * lebar

output (luas)

Deskripsi :

read(nama, usia)

write(‘SelamatDatang‘, nama)

write(‘Usia Anda sekarang adalah ‘, usia, ‘tahun’)

Deskripsi :

write("Hello, world")

b. Jelaskan bagian tersebut pada Penyajian dengan deskripsi, flowchart, dan Pseudo Code

1. Kalimat Deskriptif

Notasi algoritma dengan menggunakan kalimat deskriptif disebut juga notasi alami. Notasi
algoritma deskriptif dilakukan dengan cara menuliskan intruksi-intruksi yang musti dilaksanakan
dalam bentuk untaian kalimat deskriptif dengan menggunakan bahasa yang jelas. Notasi
deskriptif ini disarankan untuk algoritma yang pendek karena apabila untuk algoritma yang
panjang notasi deskriptif kurang efektif. Secara garis besar notasi deskriptif tersusun atas tiga
bagian utama, yaitu :

Bagian Judul, merupakan bagian yang terdiri atas nama algoritma dan penjelasan atau spesifikasi
algoritma tersebut.

Bagian Deklarasi, merupakan bagian untuk mendefinisikan semua nama yang digunakan pada
algoritma dapat berupa variabel, konstanta, tipe ataupun fungsi

Bagian Deskripsi, merupakan bagian inti pada struktur algoritma yang berisi uraian langkah-
langkah penyelesaian masalah.

Contoh penulisan algoritma dengan notasi deskriptif.

Algoritma Luas_Lingkaran

{Menghitung luas lingkaran untuk ukuran jari-jari tertentu. Algoritma menerima masukan jari-
jari lingkaran, menghitung luasnya, lalu mencetak luasnya ke piranti keluaran}

Deklarasi :
Jari_jari = real {tipe data bilangan pecahan}

Luas = real {tipe data bilangan pecahan}

PHI = 3.14

Deskripsi

1. Baca jari

2. Hitung luas = PHI*jari_jari * jari_jari

3. Tampilkan luas ke layar

4. Selesai

2. Pseudecode

Pseudocode adalah salah satu bentuk penulisan algoritma yang cukup banyak digunakan, dimana
bentuk ini mirip dengan bahasa program. Walaupun mirip namun namun jelas pseudocode
bukanlah bahasa pemrograman.

Pseudocode memiliki fungsi untuk mempermudah kita memahami tanpa bergantung pada bahasa
pemrograman apapun, dengan aspek yang ringkas kita dapat memetakan sebuah algoritma
dengan susunan yang jelas untuk pemecahan suatu masalah. Dengan membuat pseudocode
setidaknya kita dapat memiliki gambaran seberapa rumit program yang akan dibuat.

Cara Menulis Pseudocode

Secara umum penulisan pseudocode terbagi kedalam tiga bagian, sebagai berikut:

Judul – Pada bagian ini kita menuliskan judul dari suatu program yang akan dibuat. Biasanya
judul diawali dengan kata “program” atau “algoritma” kemudian diikuti dengan nama program
yang ingin dibuat. Contoh : program menghitung luas_lingkaran atau program menghitung
gaji_karyawan.

Deklarasi – Pada bagian ini kita bisa menulis semua variabel yang diinisialisasikan didalam
suatu program. Biasanya menggunakan kata kunci ‘var’ diikuti dengan nama variabel dan tipe
data yang digunakan.

Isi – Bagian ini merupakan bagian utama pada suatu program dimana terdiri dari perintah
program terstruktur baik berupa kondisional, perulangan dan lainnya.

Contoh Algoritma Dalam Bentuk Pseudocode


Contoh Algoritma Pseudocode untuk menghitung luas persegi panjang. Rumus luas persegi
panjang adalah panjang (p) x lebar (l). Jika diketahui:

panjang=6;

lebar=2;

Maka bentuk pseudocodenya adalah seperti berikut ini:

Program menghitung_luas_persegi_panjang

Deklarasi :

var panjang : lebar : luas : integer ;

Deskripsi :

panjang <- 6 ;

lebar <- 2 ;

luas <- panjang * lebar ;

write (luas) ;

3.Flowchart

Algoritma bertipe Flow Chart adalah algoritma yang ditulis dalam bentuk diagram-diagram
dengan anak panah sebagai penunjuk urutan langkah algoritmanya. Didalam Diagram terdapat
Simbol-simbol yang mempunyai makna atau arti tersendiri. 

Flowchart merupakan  gambar atau bagan yang memperlihatkan urutan atau langkah-langkah
dari suatu program dan hubungan antar proses beserta pernyataanya. Gambaran ini dinyatakan
dengan simbol. Dengan demikian simbol menggambarkan proses tertentu. Sedangkan antara
proses digambarkan dengan garis penghubung. dengan menggunakan flowchart akan
memudahakan kita untuk melakukan pengecekan bagian -bagian yang terlupakan dalam analisis
masalah. Disamping itu flowchart juga berguana sebagai fasilitas untuk berkomunikasi antara
pemrogram yang bekerja dalam tim suatu proyek. Flowchart menolong analis dan programer
untuk memecahkan masalah kedalam segmen-segmen yang lebih kecil dan menolong dalam
menganalisis alternatif-alternatif lain dalam pengoperasian. 

Pada dasarnya terdapat berbagai macam flowchart, diantaranya yaitu Flowchart Sistem (System
Flowchart), Flowchart Paperwork/Flowchart Dokumen (Document Flowchart), Flowchart Proses
(Process Flowchart), Flowchart Skematik (Schematic Flowchart), Flowchart Program (Program
Flowchart). 
Dalam pembuatan flowchart program tidak ada rumus atau patokan yang bersifat mutlak. Karena
flowchart merupakan gambaran hasil pemikiran dalam menganalisis suatu maslah yang nantinya
akan diubah menjadi program komputer. Sehingga flowchart yang dihasilkan dapat bevariasi
antara satu pemrogram dengan yang lainnya. Namun demikian terdpat beberpa anjuran yang
harus diperhatikan, yaitu :

Flowchart digambarkan disuatu halaman dimulai dari sisi atas kebawah dan dari sisi kiri ke
kanan.

Aktivitas yang digambarkan harus didefinisikan dengan menggunkan bahasa dan simbol yang
tepat dan definisi ini harus dapat dimengerti oleh pembacanya.

Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas. Hanya terdapat satu titik awal
dan satu titik akhir.

Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja.
Misalnya MENGHITUNG NILAI RATA-RATA.

Setiap langkah dari aktivitas harus berada pada urutan yang benar.

Lingkup dan range dari aktivitas yang sedang digambarkan harus ditelusuri dengan hati-hati. 

Gunakan simbol-simbol flowchart yang standard.

Struktur Peruntunan, Percabangan, dan Perulangan

Algoritma yang merupakan langkah-langkah penyelesaian masalah dapat dibedakan menjadi


beberapa struktur dasar, yaitu Struktur Urut (Sequence), Struktur Pemilihan (Selection), dan
Struktur Pengulangan (Repetition). 

1. Algoritma Sekuensial

Algoritma Sekuensial (Sequence Algorithm) adalah algoritma yang langkah-langkahnya


dikerjakan atau dieksekusi secara urut dari awal hingga akhir sesuai dengan urutannya.

Kita bisa lihat contoh gambar flowchart diatas, terlihat kumpulan instruksi tersusun dari atas ke
bawah. Program akan mengeksekusi instruksi_1, setelah instruksi_1 sudah selesai dikerjakan
selanjutnya program akan mengeksekusi instruksi_2.

Setelah instruksi_2 sudah selesai dikerjakan selanjutnya program akan mengeksekusi


instruksi_3. Setelah instruksi_3 sudah selesai dikerjakan maka selanjutnya program akan
berakhir atau selesai. Kita ambil contoh program Luas Lingkaran, dimana untuk panjang jari-
jarinya sudah diketahui besarannya. Dan berikut adalah algoritmanya :

Deskripsi :
1. Mulai

2. Input Jari_Jari

3. Hitung Luas = 3.14 * Jari_Jari * Jari_Jari

4. Cetak Luas

5. Selesai

Flowchart Luas Lingkaran

Perhatikan gambar flowchart Luas Lingkaran memiliki 3 instruksi yang harus dieksekusi.
Instruksi ke-1 : program membaca nilai jari-jari yang telah diinputkan, Instruksi ke-2 : program
melakukan operasi aritmatika rumus luas lingkaran dan Instruksi ke-3 : menampilkan hasil dari
perhitungan rumus luas lingkaran.

Catatan Penting : Semakin banyak instruksi pada program maka semakin banyak waktu untuk
mengeksekusinya. Pada perancangan sebuah program, efesiensi instruksi sangatlah penting
untuk mempercepat proses dan menghemat konsumsi memory pada program.

2. Algoritma Perulangan (Looping Algorithm)

Algoritma Perulangan atau Looping Algorithmadalah sebuah struktur dasar algoritma yang
menjalankan beberapa langkah tertentu secara berulang-ulang sampai terpenuhinya suatu
kondisi. Pada kehidupan sehari-hari banyak yang kita lakukan secara berulang-ulang, contohnya
seperti algoritma menjemur pakaian:

1. Siapkan tiang Jemuran

2. Ambil satu pakaian yang sudah dicuci

3. Peras pakaian hingga sedikit mengering


4. Letakan pakaian pada tiang jemuran

5. Ulangi langkah 2 sampai 4 hingga pakaian habis.

Dari algoritma menjemur pakaian diatas, kita dapat mendapat gambaran tentang struktur
algoritma looping. Jenis struktur dasar ini akan selesai jika sebuah kondisi tertentu terpenuhi,
seperti menjemur pakaian maka proses jemur akan selesai jika pakaian yang akan dijemur sudah
habis. Struktur dasar algoritma ini mempunyai beberapa bentuk seperti Struktur FOR, Struktur
While dan Struktur Do….While.

A. Struktur FOR

Struktur dasar algoritma perulangan menggunakan instruksi FOR digunakan untuk mengulang
satu baris instrusi atau beberapa baris instruksi sampai jumlah perulangan yang disyaratkan
terpenuhi. Ciri-ciri utama struktur perulangan menggunakan FOR adalah terdapat nilai awal dan
nilai akhir yang menunjukkan syarat yang harus terpenuhi. Berikut Flowchart menggunakan
FOR :

Gambar diatas menjelaskan bahwa Instruksi_1, Instruksi_2 dan Instruksi_3 akan dieksekusi atau
dikerjakan ketika syarat terpenuhi. Perulangan menggunakan struktur FOR dimulai dari
Nilai_Awal dan akan berhenti pada Nilai_Akhir. Untuk lebih jelasnya kita lihat contoh algoritma
mencetak angka menggunakan FOR, program akan dicetak angka 1 sampai 5.

Deskripsi :

1. Mulai

2. Kerjakan Langkah 3 mulai i = 1 sampai i = 5

3. Cetak i

4. Selesai

Flowchart Cetak Angka dengan FOR


  

Gambar flowchart diatas, menjelaskan bahwa nilai i awal berisi 1, kemudian dicetak nilai i awal
yaitu 1. Dalam struktur perulangan menggunakan FOR, nilai variabel i akan bertambah secara
otomatis sehingga nilai variabel i. Setelah ditambahkan secara otomatis, sekarang i = 2 lalu cetak
nilai variabel i.

Proses tersebut akan dijalankan sampai kondisi yang sudah ditentukan terpenuhi yaitu i = 5 maka
proses looping akan berhenti. Jika belum paham kita pelajari dengan seksama contoh ke 2,
algoritma Cetak Bilangan Genap menggunakan struktur FOR, program akan mencetak bilangan
genap mulai dari 0 dengan batas akhir 10 dengan menggunakan struktur looping FOR.

Deskripsi :

1. Mulai

2. Kerjakan langkah 3 sampai langkah 4 mulai i = 1 sampai i = 10

3. Jika i dibagi 2 sama dengan 0 maka kerjakan langkah 4

4. Cetak i

5. Selesai

Flowchart Cetak Bilangan Genap dengan FOR

Gambar flowchart diatas, menjelaskan bahwa program akan mengeksekusi syarat yang
dijabarkan dengan FOR, diketahui nilai i pertama kali berisi 1 kemudian diuji apakah nilai i
tersebut habis dibagi dengan 2. Jika benar maka nilai i akan dicetak kemudian dilakukan
penambahan otomatis sehingga nilai i menjadi 2. Namun jika salah, nilai i akan langsung ke
langkah penambahan otomatis. Proses tersebut akan dieksekusi terus sampai nilai i lebih besar
dari 10.

B. Struktur WHILE
Struktur looping dengan menggunakan WHILE berfungsi hampir mirip dengan FOR yaitu
mengulang satu baris instruksi atau beberapa baris instruksi selama syarat yang ditentukan masih
terpenuhi. Ciri-ciri utama dari struktur WHILE adalah syarat yang ditentukan akan diuji lebih
dahulu sebelum instruksi-instruksi dieksekusi dalam perulangan.

Catatan Penting : pada Struktur WHILE akan menguji syarat yang ditentukan terlebih dahulu,
sehingga jika syarat tidak terpenuhi ada kemungkinan instruksi-istruksi pada perulangan tidak
dikerjakan.

Flowchart struktur while

Gambar diatas menjelaskan bahwa syarat akan diuji oleh pemroses terlebih dahulu sebelum
mengeksekusi instruksi-instruksi yang akan diulang. Jika syarat yang diuji benar, maka instruksi
akan dieksekusi. Setelah instruksi dikerjakan maka syarat akan diuji lagi, proses perulangan ini
akan berhenti jika syarat yang telah diuji bernilai salah. Untuk lebih jelasnya, kita simak contoh
algoritma cetak angka menggunakan WHILE, program akan mencetak angka 1 sampai 5 dengan
struktur WHILE.

Deskripsi :

1. Mulai

2. i = 1

3. Selama i <= 5 kerjakan langkah 4 sampai langkah 5

4. Cetak i

5. i = i + 1

6. Selesai

Flowchart Cetak Angka dengan WHILE


Gambar flowchart diatas, menjelaskan bahwa nilai i pertama kali bernilai 1. Kemudian akan diuji
apakah nilai i lebih kecil atau sama dengan (<=) 5, jika benar maka nilai i dicetak. Kemudian
nilai i ditambah 1, lalu nilai i akan diuji kembali apakah masih memenuhi syarat yang sudah di
deklaraskikan diawal, jika benar maka nilai i akan dicetak. Langkah perulangan akan berjalan
terus sampai nilai i lebih besar dari 5.

Catatan penting : Pada struktur WHILE penambahan tidak dilakukan secara otomatis seperti
pada struktur FOR, sehingga kita perlu menambahkan instruksi lagi. Untuk lebih jelasnya kita
liat lagi contoh berikutnya algoritma cetak bilangan genap menggunakan WHILE, program akan
mencetak bilangan genap sampai 10 dengan menggunakan struktur perulangan WHILE.

Deskripsi :

1. Mulai

2. i = 1

3. Selama i <= 10 kerjakan langkah 4 sampai langkah 6

4. Jika i habis dibagi 2 kerjakan langkah 5

5. Cetak i

6. i = i + 1

7. Selesai

Flowchart Cetak Angka Genap dengan WHILE

Pada gambar flowchart diatas, dapat dijelaskan pertama adalah nilai i diberikan nilai 1. Lalu nilai
i diuji apakah nilai i lebih kecil atau sama dengan (<=) 10, jika benar maka akan dilakukan
operasi aritmatika yaitu nilai i dibagi 2, jika habis atau hasilnya 0 maka akan dicetak nilai i dan
jika sebaliknya maka nilai i tidak tercetak dan langsung keproses berikutnya.
Proses berikutnya adalah nilai i akan ditambah 1, sebelumnya nilai i adalah 1 maka setelah
proses ini menjadi 2. Kemudian nilai i diuji kembali sampai nilai i lebh besar dari 10 barulah
proses perulangan menggunakan WHILE berakhir.

C. Struktur DO…WHILE

Struktur looping dengan DO…WHILE digunakan untuk mengulangi satu baris instruksi atau
beberapa baris instruksi sampai syarat yang ditetapkan tidak terpenuhi. Ciri-ciri utama dari
struktur DO…WHILE ialah syarat akan diuji setelah instruksi dikerjakan seluruhnya atau bisa
kita katakan pengujian pada syarat dilakukan dibelakang.

Catatan penting : Struktur menggunakan DO…WHILE berbeda dengan menggunakan WHILE,


jika DO…WHILE melakukan pengujian di akhir dan WHILE melakukan pengujian di awal.

Flowchart struktur DO…WHILE

Pada gambar flowchart diatas, kita bisa lihat bahwa instruksi_1, instruksi_2 dan instruksi_3 akan
dikerjakan dahulu baru syarat akan diuji. Jika syarat yang diuji bernilai benar maka instruksi_1
sampai instruksi_3 akan dikerjakan kembali.

Setelah dikerjakan kembali maka syarat akan diuji lagi, perulangan akan selesai jika syarat yang
diuji bernilai salah. Untuk lebih jelasnya kita lihat contoh algoritma cetak angka DO…WHILE,
program akan mencetak angka 1 sampai 5 dengan menggunakan DO…WHILE

Deskripsi :

1. Mulai

2.  i = 0

3.  i = i + 1

4. Cetak i

5. Jika i <= 5 kerjakan langkah 3 sampai langkah 4


6. Selesai

Flowchart Cetak Angka dengan DO…WHILE

Pada gambar diatas, pertama kali variabel i diberi nilai awal adalah 0. Kemudian nilai i ditambah
1 sehingga nilai i menjadi 1, Lalu nilai i dicetak. Langkah selanjutnya adalah nilai i diuji apakah
lebih kecil atau sama dengan (<=) 5, jika hasil uji bernilai benar maka akan kembali ke instruksi
ke 1 yaitu nilai i ditambah 1 sehingga nilai i sekarang menjadi 2. Kemudian nilai i dicetak dan
diuji kembali, perulangan akan berhenti sampai nilai i lebih besar dari 5.

Kita lihat contoh berikutnya algoritma cetak bilangan genap, program akan mencetak bilangan
genap dari 1 sampai 10 menggunakan struktur perulangan DO…WHILE.

Deskripsi :

1. Mulai

2. i = 1

3. Selama i <= 10 kerjakan langkah 4 sampai langkah 6

4. Jika i habis dibagi 2 kerjakan langkah 5

5. Cetak i

6. i = i + 1

7. Selesai

Flowchart Cetak Angka Genap dengan DO…WHILE

Pada gambar flowchart, instruksi pertama adalah nilai i adalah 1. Instruksi selanjutnya pengujian
nilai i habis dibagi 2, jika benar maka nilai i dicetak kemudian nilai i ditambah 1 sehingga nilai i
menjadi 2. Jika salah maka instruksi nilai i ditambah 1 sehingga menjadi 2.

Instruksi berikutnya adalah pengujian apakah nilai i lebih kecil atau sama dengan 10, jika benar
maka akan kembali pada instruksi ke 2 yaitu diuji apakah nilai i habis dibagi 2, begitulah
seterusnya sampai nilai i lebih besar dari 10 barulah perulangan selesai.

3. Algoritma Percabangan (Conditional Algorithm)

Algoritma percabangan atau Algoritma bersyarat adalah algoritma yang menjalankan instruksi
selanjutnya apabila syarat yang ditetapkan sudah terpenuhi. Pada struktur ini tidak setiap
instruksi akan dikerjakan, instruksi yang dikerjakan hanya yang memenuhi syarat saja. Pada
bahasa pemrograman struktur ini sering digunakan menggunakan instruksi IF-THEN atau lebih
dikenal instruksi jika-maka. Berikut macam-macam instruksi IF :
A. Struktur IF Sederhana

Bentuk dari struktur IF sederhana adalahIF (Syarat) THEN (Instruksi), simak gambar dibawah
ini :

Bentuk flowchart IF Sederhana

Pada gambar flowchart diatas, struktur IF sederhana dapat kita lihat bahwa instruksi_1 akan
dieksekusi jika syarat yang ditentukan bernilai benar dan jika bernilai salah, instruksi_1 tidak
akan dieksekusi. Untuk lebih jelasnya kita simak contoh algoritma kelulusan siswa, program ini
akan mengatakan bawa siswa tersebut lulus jika nilainya >= 65.

Deskripsi :

1. Mulai

2. Baca nilaisiswa

3. Jika nilaisiswa >= 65 maka kerjakan langkah 4

4. Cetak “LULUS”

5. Selesai

Flowchart Kelulusan Siswa

Pada flowchart diatas, nilai siswa yang diinputkan akan diuji apakah nilai tersebut lebih besar
atau sama dengan 65. Jika benar maka program akan mencetak “LULUS” kemudian selesai,
namun jika salah maka program selesai.

B. Struktur IF…THEN…ELSE…

Pada struktur ini, terdapat dua kemungkinan instruksi yang akan dikerjakan berdasarkan hasil
dari pengujian. Contoh jika syarat yang diujikan memperoleh hasil benar maka instruksi_1
dikerjakan, namun jika bernilai salah maka instruksi_2 yang dikerjakan. Untuk lebih jelasnya
bisa lihat gambar dibawah ini :

Bentuk flowchart

   

Tidak lengkap rasanya kalau tidak diberikan contoh, mengambil masalah sebelumnya tentang
kelulusan siswa. Sekarang kita modifikasi sedikit dimana jika nilai siswa lebih besar atau sama
dengan 65 maka dinyatakan lulus dan jika nilai siswa lebih kecil dari 65 maka siswa dinyatakan
tidak lulus.

Deskripsi :

1. Mulai

2. Baca nilaisiswa

3. Jika nilaisiswa >= 65 maka kerjakan langkah 4, selain itu kerjakan langkah 5

4. Cetak “LULUS”

5. Cetak “TIDAK LULUS”

6. Selesai

Flowchart Kelulusan Siswa

Pada gambar flowchart diatas, setelah nilai diinputkan maka nilai tersebut akan diuji apakah nilai
siswa lebih besar atau sama dengan 65. Jika benar maka program akan mencetak “LULUS” lalu
selesai, Jika tidak maka akan dicetak “TIDAK LULUS” lalu program selesai.

C. IF Bersarang

Untuk struktur yang satu ini kita perlu belajar logika dan ketelitian, satu alasan yang pasti adalah
struktur ini sering dipakai untuk tes kerja dalam bidang IT terutama pekerjaan yang berkaitan
dengan perancangan sistem. Pada struktur ini juga kemungkinan akan banyak instruksi yang
dikerjakan berdadarkan hasil pengujian, bisa disimak gambar dibawah ini:

Flowchart struktur IF Bersarang

Dari flowchart diatas kita bisa pelajari bagaimana struktur dari IF bersarang. Kita jabarkan satu
persatu, jika syarat1 yang diuji bernilai benar maka instruksi1 akan dieksekusi, jika syarat1
bernilai salah maka syarat2 diuji,jika syarat2 yang diuji bernilai benar maka instruksi2 akan
dieksekusi, jika syarat2 bernilai salah maka syarat3 diuji, jika syarat3 yang diuji bernilai benar
maka instruksi3 akan dieksekusi, jika syarat3 bernilai salah maka syaratx diuji, jika syaratx yang
diuji bernilai benar maka instruksix akan dieksekusi, jika syaratx bernilai salah atau tidak ada
syarat yang terpenuhi maka instruksiy yang dieksekusi.

Untuk lebih jelasnya, kita implementasikan dalam sebuah algoritma konfersi nilai siswa,
program akan mengkonfersi nilai siswa dari semula dalam bentuk angka dirubah menjadi bentuk
huruf dengan ketentuan sebagai berikut :

– Jika nilai angka >= 80 maka nilai huruf sama dengan A

– Jika nilai angka >= 70 maka nilai huruf sama dengan B

– Jika nilai angka >= 60 maka nilai huruf sama dengan C

– Jika nilai angka >= 50 maka nilai huruf sama dengan D

– Jika nilai angka < 50 maka nilai huruf sama dengan E

Deskripsi :

1. Mulai

2. Baca nilaiangka

3. Jika nilaiangka >= 80 maka nilaihuruf = “A”, selain itu

4. Jika nilaiangka >= 70 maka nilaihuruf = “B”, selain itu


5. Jika nilaiangka >= 60 maka nilaihuruf = “C”, selain itu

6. Jika nilaiangka >= 50 maka nilaihuruf = “D”, selain itu

7. nilaihuruf = “E”

8. Cetak nilaihuruf

9. Selesai

Flowchart Konfersi Nilai Siswa

Dapat dicermati gambar flowchart diatas, hal yang perlu diperhatikan dalam struktur IF
bersarang adalah jika salah satu syarat sudah terpenuhi maka syarat-syarat lainnya yang ada
sejajar tidak akan diuji lagi. Contohnya kita masukan nilaiangka 60 maka nilaihurufnya adalah
“C” dan pengujian nilaiangka lebih besar atau sama dengan 50 tidak akan dijalankan.

Kesimpulan Struktur Dasar Algoritma

Dari penjabaran yang cukup panjang diatas, kita bisa mengetahui seperti apa struktur dasar
algoritma. Pada praktiknya dalam perancangan sebuah sistem bentuk-bentuk diatas akan
berkolaborasi menjadi satu kesatuan. Dan inilah yang menjadikan Algoritma salah satu bagian
terpenting dalam perancangan sebuah sistem.

Anda mungkin juga menyukai