Di artikel sebelumnya saya pernah menjelaskan mengenai jenis-jenis penyajian pemecahan masalah dalam algoritma, di artikel tersebut dijelaskan bahwa penyajian atau penulisan pemecahan masalah dalam algoritma dibagi menjadi 3 kategori yaitu, bahasa natural, flowchart psedeocode. Masih membahas seputar algoritma, di artikel kali ini yang akan saya bahas adalah algoritma percabangan, algortima percabangan merupakan bagian penting yang harus dipahami dengan baik, karena ketika anda terjun kedunia bahasa pemrograman tingkat tinggi anda tidak akan lepas dari instruksi percabangan. Algoritma percabangan adalah salah satu jenis perintah dalam algoritma yang digunakan sebagai cara untuk memberitahukan program tentang perintah apa yang harus dijalankan, dimana perintah tersebut disesuaikan dengan beberapa kondisi tertentu. Dalam sebuah program atau sistem, ada saatnya sebuah instruksi atau perintah hanya bisa dilakukan jika memenuhi suatu kondisi atau persyaratan tertentu. Itu mengapa, algoritma percabangan ini bisa disebut juga dengan algoritma seleksi kondisi.Agar anda lebih memahami mengenai algoritma percabangan ini, maka di artikel kali ini saya akan coba uraikan beberapa contoh algoritma percabangan dalam kehidupan sehari-hari yang sering sekali anda temui. Berikut adalah beberapa contoh kasus algoritma percabangan dalam kehidupan sehari-hari.Penyajian algoritma berikut adalah algoritma untuk kasus menonton film dimana yang hanya bisa menonton film adalah orang yang berusia 17 tahun ke bawah, jika usia lebih dari 17 tahun tidak boleh menonton film. Flowchart: Pada algoritma di atas usia diinput oleh pengguna, selanjutnta usia yang diinput dicek dengan pengkondisian (apakah usia lebih besar dari 17), jika usia lebih besar dari 17 (Ya), maka cetak "Silahkan menonton" Jika (tidak), maka cetak "Anda tidak boleh menonton. Algoritma Pseudocode menonton film Berikut adalah penyajian algoritma pseudocode untuk kasus di atasAlgoritma menonton_film Deklarasi usia : integer Deskripsi: read (usia) if(usia>7)then write ("Anda tidak boleh menonton") else write ("Silahkan Menonton") endif Pengkondisian kebanyakan menggunakan simbol operator matematika seperti >, <, =, <=,>= seperti contoh diatas (usia >7) Algoritma flowchart & pseudocode berikut adalah algoritma untuk mengecek nilai siswa, jika nilai siswa lebih besar dari 70 maka lulus jika tidak maka tidak lulus. Flowchart:
Pseudocode: Algoritma kelulusan_siswa deklarasi var nama,ket:string nilai:integer Deskripsi: read(nama,nilai) if(nilai >70)then ket <- "Lulus" else ket <- "Tidak Lulus" endif write(nama,nilai,ket) Algoritma flowchart dan pseudocode di atas adalah algoritma percabangan untuk 1 kondisi, semoga bermanfaat.
Pengertian algoritma pemrograman percabangan, adalah salah satu jenis algoritma yang digunakan untuk memberitahukan program tentang perintah apa yang harus dijalankan, dimana perintah tersebut akan disesuaikan dengan beberapa kondisi. Fungsi algoritma ini adalah untuk memproses keputusan yang tepat dan cepat sesuai dengan yang keinginan pengguna berdasarkan kondisi yang terjadi pada sistem yang digunakan. Algoritma percabangan ini biasa disebut juga sebagai algoritma seleksi kondisi, flow control, dan algoritma pemilihan. Algoritma percabangan memiliki beberapa macamnya. Meskipun begitu, tujuan dari algoritma ini sama-sama untuk menentukan perintah mana yang akan dikerjakan oleh sebuah program yang disesuaikan dengan kondisi atau syarat tertentu. Apa sajakah macam-macam algoritma percabangan tersebut?
Pada artikel berikut ini, kami akan memberikan contoh algoritma percabangan berdasarkan jenis-jenisnya menggunakan macam-macam bahasa pemrograman. Contoh-contoh berikut bisa Anda jadikan sebagai bahan latihan. Eitss, sebelumnya Anda harus mengerti dahulu pengertian algoritma, flowchart, dan pseudocode, karena ketiga hal tersebut adalah dasar dalam mempelajari pemrograman. Anda juga bisa mengetahui semuanya di situs kami. Yuk kita simak contohnya: Contoh 1: uses crt; if(jeniskelamin = ‘l’) then writeln(‘Laki-laki’); if(jeniskelamin = ‘p’) then writeln(‘Perempuan’); readkey;end Contoh 2: Percabangan satu kondisi dengan menggunakan bahasa pemrograman C++: #include <iostream.h> int main (){ int nilai; char a; cout<<“Masukkan Nilai Anda:”; cin>>nilai; if (nilai>60){ cout<<“Selamat Anda Lulus!!”; } cin>>a; return 0; } Contoh 1: Buatlah algoritma untuk menebak usia seseorang yang diiput oleh pengguna, dengan ketentuan sebagai berikut:
Jawab: DEKLARASI ALGORITMA: read(usia) IF usia<=5 THEN write(‘Balita’) ELSE IF usia>5 and usia <=12 THEN write(‘Anak-anak’) ELSE IF usia >12 and usia <18 THEN write(‘Remaja’) ELSE write(‘Dewasa’)ENDIF Contoh 2: If x > 0 then ket ß ‘bilangan positif’ if m = n i ß m*n write(i) if bil>=0 then ket ß (‘bilangan positif’) else ket ß (‘bilangan negatif’) if m = n then i ß m*n j ß m-n else i ß m/n j ß m+n write(i,j) Contoh 3: Contoh Kasus : Penggolongan nilai ALGORITMA: Mulai Menentukan nilai siswa Jika nilai siswa ( 0 – 100 ) > 75 Tergolong Baik Jika nilai siswa ( 0 – 100 ) ≤ 75 Tergolong Cukup Tampilkan hasil Selesai PSEUDOCODE: Var : nilai_siswa : integer Pseudocode read (nilai siswa ) IF nilai siswa > 75 THEN write ( tergolong baik ) ELSE write ( tergolong cukup ) Contoh 4: DEKLARASI ALGORITMA Read (x) If (x>0) then write (“bilangan adalah bilangan bulat positif”); End if If (x<0 write (“bilangan adalah bilangan bulat negatif”); End if Else write (“maaf nilai variabel yang anda masukkan adalah salah”); End if Contoh soal Bagaimana menentukan sebuah bilangan adalah sebuah bilangan ganjil atau genap ? Clue : menggunakan mod Jawaban (notasi algoritma) If (bilangan % 2=0) then write (“bilangan adalah bilangan genap”); End if If (bilangan % 2 !=0 ) then write (“bilangan adalah bilanga ganjil”); End if
Contoh 1: Contoh 2: Program penentuan kelulusan berdasarkan nilai dengan bahasa pemrograman Pascal: uses wincrt; Var nilai: integer; Ket : char; begin writeln(‘Program Untuk Konversi Angka Menjadi Lulus atau Tidak’); writeln(‘Dengan Kondisi jikan Nilai >= 70 lulus jika < 70 maaf ulang tahun depan’); writeln(‘Masukan Data yang akan di konversi : ‘); readln(nilai); if (nilai>=80) then begin Ket :=’A’; end else if (nilai>=70) then begin Ket :=’B’; end else if (nilai>=60) then begin Ket :=’C’; end else if (nilai>=50) then begin Ket :=’D’; end else begin Ket :=’E’; end; writeln(‘Nilai : ‘,nilai,’ Keterangan Nilai adalah ‘,Ket); end. Contoh 3: Menentukan bilangan terbesar Int a,b,c; if (a >= b ) and (a >=b) then write (“bilangan terbesar adalah a”)end ifif (b >= a) and (b>= c) then write (“bilangan terbesar adalah b”) end if if (c>=a) and (c>=b) then write (“bilangan terbesar adalah c”) end if else write (“bilangan yang anda masukkan adalah salah”) end if Contoh 1: Percabangan “Case Of” dalam sebuah program yang menggunakan bahasa pemrograman Pascal: uses wincrt; var x : integer; begin write (‘Masukkan sebuah nilai [0…3] : ‘); readln (x); Case (x) of 0 : Writeln(‘X bernilai 0’); 1 : Writeln(‘x bernilai 1’); 2 : Writeln(‘X bernilai 2’); 3 : Writeln(‘X bernilai 3’); else Writeln(‘X tidak bernilai 0, 1, 2, ataupun 3’); end; end. Contoh 2: Program percabangan “Case of” menggunakan bahasa pemrograman C++ : void main() { int nHari; cout << “Masukkan No Hari [1..7] : “; cin >> nHari; cout << “Ini adalah hari “; switch (nHari) { case 1: cout << “Ahad”;break; case 2: cout << “Senin”; break; case 3: cout << “Selasa”; break; case 4: cout << “Rabu”; break; case 5: cout << “Kamis”; break;default: cout << “Jumat”; } getch();} Contoh 1: Program percabangan bersarang menggunakan bahasa pemrograman Pascal : uses wincrt; var x, y, z : real; begin write (‘Masukkan bilangan 1: ‘); readln (x); write (‘Masukkan bilangan 2 : ‘); readln (y); write (‘Masukkan bilangan 3 : ‘); readln (z); if x > y then if x > z then write (‘Bilangan terbesar : ‘,x:5:2) else write (‘Bilangan terbesar : ‘,z:5:2) else if y > z then write (‘Bilangan terbesar :’,y:5:2) else write (‘Bilangan terbesar : ‘,z:5:2); end. Contoh 2: Program percabangan bersarang menggunakan bahasa pemrogaman C++ : #include <iostream.h> void main() { int A, B, C; cout << “masukan angka 1 = “; cin >> A; cout << “masukan angka 2 = “; cin >> B; cout << “masukan angka 3 = “; cin >> C; if(A<B){ if(A<C) cout<< “angka terkecil adalah : ” << A; else cout<< “angka terkecil adalah : ” << C; } else if(B<C) cout<< “angka terkecil adalah : ” << B; else cout<< “angka terkecil adalah : ” << C; } Setelah Anda mempelajari algoritma percabangan dalam artikel ini, selanjutnya Anda dapat memulai mengembangkan program dengan algoritma tersebut dalam bentuk flowchart. Apa fungsi flowchart dalam pemrograman? Jawabannya ada di situ kami ini. Sekian artikel kami kali ini mengenai algoritma percabangan. Semoga artikel ini dapat menjadi bahan materi pembelajaran programming yang berguna bagi Anda. |