BAB 6 KONTROL ALIRAN

dokumen-dokumen yang mirip
BAB 6 KONTROL ALIRAN

BAB 6 KONTROL ALIRAN

PRAKTIKUM 9 KONTROL ALIRAN

Selection, Looping, Branching

A. Dasar Teori. Urutan (Sequence) Pemilihan (Selection) Pengulangan (Iteration) Pernyataan Kondisional (If Statement)

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Dasar Pemrograman. Kondisi dan Perulangan. By : Hendri Sopryadi, S.Kom, M.T.I

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Tujuan : A. Percabangan Percabangan di dalam Java terdapat 2 macam, yaitu dengan memakai if dan switch.

Pertemuan2 Percabangan & Perulangan pada Python

2.4. Struktur Branching

Bab 4. Decision 2 (Pengambilan Keputusan)

OPERATOR, PERULANGAN DAN SELEKSI KONDISI

PENGAMBILAN KEPUTUSAN

Aliran Kendali (Flow Control)

OPERATOR DAN STATEMEN I/O

3. Struktur Perulangan dalam C++

3. Struktur Perulangan dalam Bahasa C++

if (ekspresi_boolean) {

P9 Seleksi & Perulangan

KENDALI PROSES. Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan.

Pertemuan 2. Muhadi Hariyanto

Pemrograman Dasar S E L E C T I O N

BAB V. STATEMEN KONTROL

Pemrograman Fery Updi,M.Kom

Algoritma Pemrograman 2B (Pemrograman C++)

KENDALI PROSES. 6.1 PENYELEKSIAN KONDISI (Selection)

(Struktur Kondisi dan Perulangan) KOMPETENSI DASAR

RENCANA PEMBELAJARAN SEMESTER (RPS) PEMROGRAMAN KOMPUTER

Pada akhir pertemuan ini, diharapkan mahasiswa memiliki kemampuan untuk: Menggunakan struktur kendali pencabangan bersyarat dalam bahasa pemrograman.

MODUL 10 PERNYATAAN KONTROL: FOR DAN SWITCH - CASE. Struktur perulangan for biasa digunakan untuk mengulang suatu proses yang

Decission : if & if else

TPI4202 e-tp.ub.ac.id. Lecture 5 Mas ud Effendi

Sintaks Pemilihan 1. Jika saya lulus, maka saya akan mendapat hadiah.

24/09/2017 PERCABANGAN

Struktur dan Kondisi Perulangan. Struktur Kondisi

PEMROGRAMAN WEB 1. Statement Control Pemilihan dan Perulangan. Rio Andriyat Krisdiawan, M.Kom

PRAKTIKUM 4 PENGAMBILAN KEPUTUSAN

BAB 3 PENYELESAIAN KONDISI

ALGORITMA TUGAS 2 RESUME ALGORITMA PERCABANGAN DAN ALGORITMA PERULANGAN. Disusun Oleh : Sakina Mawardah Teknik Informatika. Dosen : Asep M. Yusuf, S.

Bab 2 Struktur Dasar

PERCABANGAN P E N G E N A L A N P R O G R A M S T U D I T E K N I K I N F O R M AT I K A. Institut Teknologi Sumatera

MINGGU III : KONTROL PROGRAM

STRUKTUR DASAR ALGORITMA

4.1. Pernyataan Kondisi dan Perulangan Pernyataan kondisi digunakan apabila kita ingin membandingkan atau mengetahui nilai suatu objek.

Minggu III STRUKTUR PEMILIHAN (KONTROL PROGRAM)

Selection / Pemilihan PEMILIHAN

P10 Seleksi & Perulangan

DASAR PEMROGRAMAN. PERCABANGAN ( if, if else, if ternary, nested if, switch ) Djoko Soerjanto, M.Kom

MATERI KULIAH 25 NOVEMBER DESEMBER 2015 Sri Istiyari Uswatun Chasanah G Struktur aliran atau bagan program kontrol.

MODUL V PERULANGAN. Perulangan digunakan untuk menjalankan satu atau lebih perintah secara berulang selama kondisi tertentu.

Struktur Kondisi dan Perulangan

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

Algoritma Perulangan. Kuliah algoritma dan pemrograman

24/09/2017 PERULANGAN

VISUAL BASIC 6.0 SETYO BUDI, M.KOM.

Struktur Pemilihan Ema Utami STMIK AMIKOM Yogyakarta

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA

Perulangan / Looping

PERULANGAN PROSES. Proses perulangan ditandai dengan mekanisme yang disebut loop. Proses Loop : Proses yang berulang-ulang

Bab 3. Decision 1 (Pengambilan Keputusan)

V. PENGULANGAN. while (kondisi) { Pernyataan ; } Copyright PIK Unsri Agustus 2006

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

Pengantar Pemrograman

Rekursif/ Iterasi/ Pengulangan

PHP mendukung komentar yang digunakan pada C, C++ dan Shell Unix. Sebagai contoh:

Percabangan & Perulangan

Struktur Kontrol. Contoh, Akan tercetak x is 100 jika nilai yang disimpan pada variable x adalah 100:

IF IF ELSE. ELSE IF SWITCH CASE STATEMENT F NT OR, W HILE D O WHILE I 2

PERTEMUAN 4 PENGEMBANGAN PSEUDOCODE STRUKTUR KONTROL PEMILIHAN

Tipe if : If tanpa else (if) If dengan else (if-else) Nested if

STRUKUR KENDALI : PERCABANGAN

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

MODUL PEMROGRAMAN WEB

Pemrograman Dasar R E P E T I T I O N

BAB II OPERASI BERSYARAT DAN PERULANGAN

Pengambilan Keputusan. Konsep Pemrograman Oleh Tita Karlita

Algoritma dan Struktur Data Tahar Agastani Teknik Informatika UIN

Percabangan & Perulangan

PENGENALAN MATLAB UNIVERSITAS MUHAMMADIYAH JEMBER ILHAM SAIFUDIN PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK. Senin, 06 Maret 2017

Struktur Kontrol. (Repetition)

Pertemuan 3 Struktur Kondisi dan Perulangan

Pemrograman Berorientasi Objek. Beni Suranto, S.T.

# FOUR LOOPING. JAWABAN 1. #include <stdio.h> #include <conio.h> #define pi void main(){

Kuliah #4 Ekspresi,Operator, dan Conditional Statement

Algoritme dan Struktur Data. Ekspresi,Operator, dan Conditional Statement

Analisa Kasus Part 2. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

BAB V PENYELEKSIAN KONDISI DAN PERULANGAN

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VI KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR

if (ekspresi_boolean) { Pernyataan1; } else { Pernyataan2; }

1.1 Tujuan a. Mahasiswa dapat menggunakan operator Logika b. Mahasiswa dapat membuat program kecil dengan mengikutkan control flow

Chapter 2 Tipe Data, Identifier, Operator dan Control Statement

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA

PENYELEKSIAN KONDISI

ALGORITMA (KOMPUTER) : ATURAN PENULISAN DAN STRUKTUR DASARNYA

Aliran Kendali (Flow Control)

Algoritma dan Pemrograman. Loop control structures: WHILE. Loop control structures: WHILE Perhatikan potongan program berikut: 12/29/2011

PRAKTIKUM 4 PERCABANGAN

Pertemuan 9: BRANCHING/PERCABANGAN dalam C LOOPING/PERULANGAN/ITERASI dalam C

Transkripsi:

BAB 6 KONTROL ALIRAN Pahuluan Ada delapan pernyataan kontrol kali yang disediakan di dalam Matlab. Kedelapan pernyataan tersebut antara lain 1. if, termasuk di dalamnya pernyataan else dan elseif. Pernyataan ini menjalankan kelompok pernyataan berdasarkan pada syarat logika. 2. switch, termasuk di dalamnya adalah case dan otherwise. Statement ini mengeksekusi kelompok pernyataan berbeda bergantung pada harga syarat kondisi. 3. while, menjalankan group pernyataan dengan jumlah iterasi tak terbatas berdasarkan pada syarat logika. 4. for menjalankan group pernyataan dengan jumlah iterasi telah ditentukan. 5. continue melewatkan kali ke iterasi berikutnya untuk loop for atau while. 6. break berfungsi menghentikan eksekusi looping for atau while. 7. try...catch mengubah kali aliran apabila ditemukan kesalahan selama proses eksekusi. 8. return menyebabkan eksekusi kembali ke fungsi invoking. Semua aliran membangun pemnggunaan untuk menunjukkan akhir dari blok kontrol aliran. Pernyataan Bersyarat if, else, dan elseif 1

Pernyataan if digunakan untuk menyeleksi suatu kondisi yang memungkinkan dua atau lebih pilihan. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka pernyataan yang ada di dalam blok if akan diproses dan dikerjakan. Sedangkan jika syarat tidak dipenuhi maka program akan diakhiri. Dalam bentuk diagram alir percabangan if dapat digambarkan seperti pada gambar 6.1 if (kondisi) tidak ya Perintah Gambar 6.1 Diagram alir percabangan if Bentuk umum struktur kondisi if adalah : if (syarat) pernyataan Keterangan Apabila pernyataan logika berharga benar (true), maka seluruh pernyataan atau perintah yang berada diantara if dan akan dijalankan. 2

Sebaliknya, jika pernyataan logika berharga salah (false), maka seluruh perintah/pernyataan yang berada diantara if dan tidak akan dijalankan karena Matlab akan langsung menuju. Syarat biasanya merupakan pernyataan logika, yakni pernyataan yang mengandung operator relational yang berharga benar atau salah. Dibawah ini disajikan operator relasi. Operator relasi Arti < Kurang dari <= Kurang dari atau sama dengan > Lebih dari >= Lebih dari atau sama dengan == Sama dengan ~= Tidak sama dengan Beberapa contoh untuk pernyataan logika yang menggunakan operator relasi beserta artinya. b^2-4*a*c<0 b^2>4*a*c b^2-4*a*c==0 b~=4 b 2 4a c0 b 2 4 a c b 2 4a c=0 b 4 Contoh 6.1 a=2; if mod(a,2) == 0 disp('pernyataan benar..!!') Disamping operator relasi akan dibutuhkan pula operator logika yang 3

macamnya antara lain Operator logika Lambang Arti And & Dan Or Atau Not ~ Bukan Xor Eksklusiv Or Di bawah ini disajikan tabel harga dari pernyataan dengan operator logika a b a&b a b ~a ~b a xor b TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE FALSE TRUE TRUE FALSE TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE Contoh Akan diberikan beberapa contoh berkaitan dengan penggunaan operator logika seperti di bawah ini Pernyataan Bersyarat if-else Dalam pernyataan bersyarat if-else setidaknya terdapat dua pernyataan. Jika syarat yang diperiksa bernilai benar atau terpenuhi maka pernyataan pertamalah yang akan dijalankan, tetapi apabila syarat yang diperiksa tidak memenuhi atay bernilai salah maka pernyataan yang kedualah yang akan dijalankan. 4

Bentuk umumnya adalah sebagai berikut : if(syarat) pernyataan A else pernyataan B if (kondisi) tidak ya Perintah Perintah Gambar 4.2 Diagram alir percabangan if else Contoh Program 6.2 x=input('masukkan harga x:'); if (x>3) disp('pernyataan benar.'); disp('pernyataan benar sekali..'); else disp('pernyataan salah.'); disp('pernyataan salah sekali..'); 5

Pernyataan Bersyarat elseif Penggunaan pernyataan bersyarat else if akan memberikan solusi kepada kita apabila terdapat lebih dari satu syarat yang ada untuk menjalankan masingmasing pernyataan apabila syarat yang diberikan terpenuhi. Pernyaan else if akan dieksekusi apabila syarat yang dberikan pada if sebelumnya (atau elseif sebelumnya) berharga salah (0). Pernyaaan ini selanjutnya akan mengeksekusi perintah/pernyataan di dalamnya apabila syarat logikanya berharga benar (1). Bentuk umum dari pernyataan bersyarat elseif maka adalah If Ya Perintah Perintah... Tidak elseif Tidak elseif Tidak Ya Ya Perintah Perintah... Perintah Perintah... else Perintah Perintah... Gambar 6.3 Diagram alir pernyataan elseif Contoh Program 6.3 6

n=input('masukkan harga n:') if n < 0 % jika n negatif, ada pesan salah. disp('masukan harus bilangan positif'); elseif rem(n,2) == 0 % jika n posisif dan bulat, % kemudian bagi dengan 2 A = n/2; else A = (n+1)/2; % jika n positif dan ganjil % tambahkan 1,kemudian bagi dengan 2. Pernyataan bersyarat if bersarang Pernyataan ini sangat penting untuk masalah-masalah yang memiliki lebih dari dua cabang. Mengapa pernyataan ini disebut pernyataan bersarang, karena di dalam pernyataan if ada pernyataan if lagi. If yang kedua ini dapat berada di dalam if siri atau berada di dalam else. if (syarat) perintah/pernyataan if (syarat) perintah/pernyataan else perintah/pernyataan else perintah/pernyataan if (syarat) perintah/pernyataan else perintah/pernyataan Contoh Program 6.4 a=input('masukkan a:'); 7

if mod(a,2)==0 fprintf('%i adalah bilangan genap\n',a); if (a>5) fprintf('%i lebih besar 5',a); else fprintf('%i kurang dari 5',a); else fprintf('%i adalah bilangan ganjil\n',a); if (a<5) fprintf('%i kurang dari 5',a); else fprintf('%i lebih besar dari 5',a); if (kondisi) tidak Perintah ya Perintah if (kondisi) if (kondisi) Perintah Perintah Perintah Perintah Perintah Perintah Gambar 6.4 Diagram Alir Pernyataan If Bersarang 8

Operator Logika Pernyataan logika yang lebih rumit dapat disusun dari tiga operator logika yaitu and (&), or ( ) dan not (~). Sebagai contoh dalam penyelesaian persamaan kuadrat berbentuk ax 2 bxc=0 akan memiliki akar yang berharga -b/(2a) apabila diskriminan b 2 4 a c=0 dan a 0. Jika dinyatakan dalam Matlab if (b^2-4*a*c)==0 & (a~=0) x=-b/(2*a); Gambar 6.5 Grafik fungsi kuadrat dengan dua akar yang sama switch-case Pernyataan switch akan mengeksekusi sekelompok perintah/ pernyataan berdasarkan pada harga variabel atau ekspresi. Pernyataan switch bekerja 9

dengan cara membandingkan masukan (input) ekspresi dengan harga pada tiaptiap peryataan case. Untuk ekspresi numerik, pernyataan case bernilai benar apabila (nilai=ekspresi). Untuk ekspresi string, pernyataan case bernilai benar apabila strcmp(nilai,ekspresi). Bentuk dasar dari switch adalah switch ekspresi (skalar atau string) case nilai1 pernyataan % dieksekusi jika ekspresi adalah nilai1 case nilai2 pernyataan % dieksekusi jika ekspresi adalah nilai2....... otherwise pernyataan % dieksekusi jika ekspresi tidak cocok % dengan case manapun Dibawah ini diberikan sebuah contoh penggunaan pernyataan switchcase. Pernyataan switch akan mengecek variabel masukan untuk nilai tertentu. Apabila variabel masukan adalah 1, 2 atau 3, maka pernyataan case akan menampilkan luas masing-masing untuk kubus, persegi panjang dan lingkaran. Sedangkan, apabila variabel masukan bukan 1,2 atau 3, maka switch akan langsung menuju ke otherwise. % Contoh Program 6.5 disp('pilih salah satu program..\n'); disp('1: menghitung luas bujur sangkar: \n'); disp('2: menghitung luas persegi panjang: \n'); disp('3: menghitung luas lingkaran: '); no=input('\n Anda ingin menghitung luas 1,2 atau 3 \n'); 10

switch no case 1 a=input('masukkan panjang sisi bujur sangkar:'); luas=a^2; fprintf('luas bujur sangkar adalah %f \n',luas); case 2 a=input('masukkan panjang persegi panjang: '); b=input('masukkan lebar persegi panjang: '); luas=a*b; fprintf('luas persegi panjang adalah %f',luas); case 3 a=input('masukkan jari-jari lingkaran :'); luas=pi*r^2; fprintf('luas lingkaran adalah %f ',luas); otherwise fprintf('ulangi pilihan yang ada...!!') while Pernyataan while akan menjalankan pernyataan atau sekelompok pernyataan secara berulang-ulang selama kontrol perulangan berharga benar (1). Secara umum, bentuk dari perulangan while adalah while (syarat) pernyataan Contoh Program 6.7 11

Program di bawah ini akan mencari n bilangan pertama perjumlahan bilangan interger yang berharga <100. Algoritma untuk membuat program ini adalah inisialiasi untuk jum inisialisai untuk n ulang hingga syarat sum(1:n)< jum terpenuhi cetak n gantikan n dengan n+1 akhiri perulangan %program mencetak bilangan jum=100; n = 1; while sum(1:n) < jum disp(n) n = n + 1; Jika dijalankan hasilnya adalah 1 2 3 4 5 Contoh Program 6.8 Sekarang kita akan mencetak pola-pola bilangan dengan yang hasilnya seperti gambar di bawah ini 1 12

1 2 1 2 3 1 2 3 4 1 2 3 4 5 1 2 3 4 5 6 Penyelesaian Marilah kita membuat algortima untuk mencetak pola bilangan tersebut inisialiasasi I perulangan pertama hingga i<=6 inisialisasi x perulangan kedua hingga x<=i cetak x gantikan x dengan x+1 akhiri perulangan kedua lompat ke baris berikutnya gantikan i dengan i+1 akhiri perulangan pertama %Program mencetak pola bilangan i=1; while(i<=6) x=1; while(x<=i) fprintf('%i',x); x=x+1; 13

fprintf('\n'); i=i+1; Perulangan for Struktur perulangan for biasa digunakan untuk mengulang suatu proses yang telah diketahui jumlah perulangannya. Dari segi penulisannya, struktur perulangan for tampaknya lebih efisien karena susunannya lebih simpel dan sederhana. Secara default, penambahan indeks adalah 1, tetapi kita dapat mengeset siri misalnya penambahannya 2, 3 atau berapapun bahkan dapat pula negatif. Untuk penambahan positif, perulangan akan berakhir manakala indeks sudah lebih dari yang tentukan. Sedangkan untuk penambahan negatif, perulangan berakhir saat indeks lebih kecil dari yang ditentukan. Secara umum, sintaks for adalah sebagai berikut for indeks =i:k pernyataan/perintah atau for indeks =i:m:k pernyataan/perintah Keterangan i:k merupakan vektor dengan elemen-elemen i,i1,i2,, k i :m: k adalah vektor dengan elemen-elemen i,im,i2 m, hingga 14

elemen terakhir tidak lebih dari k jika m>0 dan elemen terakhir tidak kurang dari k jika m<0. Indeks merupakan bentu variabel. Contoh program di bawah ini akan mencetak sebuah kalimat berbunyi Aku mahasiswa semester 5 sebanyak lima kali dengan mengunakan pernyataan perulangan for. %Contoh Program 6.9 %contoh perulangan for N=5; for i=1:n fprintf('%i. Aku mahasiswa semester 5 \n',i); LATIHAN Buatlah sebuah program dengan koefisien berselang seling tanda seperti di bawah ini 1 1 2 1 3 1 4 1 5 Penyelesaian Untuk menyelesaikan bentuk jumlah yang bersaling seling ini kita perlu sedikit pintar. Dalam contoh ini, kita akan menghitung hingga suku yang ke 999. inilah programnya N=999; sum=1; koef=-1; 15

for n=1:n if (koef==-1) koef=1; sum=sum+1/n; disp(sum) Pernyataan continue Pernyataan continue berfungsi melewatkan kali ke iterasi berikutnya di dalam perulangan for maupun while. Apabila pernyataan continue berada di dalam loop bersarang, maka pernyataan continue akan melewatkan kali ke iterasi berikutnya. Sebagai contoh, perhatikan di bawah ini N=20; for i=1:n if (i<5) continue; fprintf('%i. Aku mahasiswa semester 5 \n',i); Apabila skrip program di atas dieksekusi, maka yang keluar adalah tampilan tulisan Aku mahasiswa semester 5 sebanyak 16 buah mulai dari nomor 5 hingga nomor 20. Dengan kata lain, kalimat dari nomot 1 hingga 4 tidak ditampilkan. Hal ini disebabkan perintah continue yang berada di dalam loop for. Pernyataan break 16

Pernyataan break berfungsi untuk menghentikan eksekusi loop for maupun loop while. Apabila break ditemukan di dalam kalang for maupun while, maka eksekusi akan dihentikan apabila syarat yang diberikan terpenuhi. N=20; for i=1:n if (i>5) break; fprintf('%i. Aku mahasiswa semester 5 \n',i); Contoh Program... Buatlah sebuah program Matlab untuk menghitung jumlahan berikut ini 1 1/31/5 1/71/9 hingga suku terkahir kurang dari 10 4 Penyelesaian Sebelum kita membuat progra Matlab, kita perlu membuat algoritmanya terlebih dahulu inisialisasi jum=0 inisialisai tol=10 4 inisialisasi sign=-1 inisialisasi suku=1 inisialisai N=100000000 ulang hingga N kali perulangan dimulai dari k=1 sign=-sign suku=1/(2*k-1) 17

jika suku<tol hentikan pencarian jum=jum+sign*suku Cetak hasilnya Selesai Hasil programya adalah jum=0; tol=1e-4; sign=-1; N=100000000 suku=1; for k=1:n sign=-sign; suku=1/(2*k-1); if (suku<tol) break; jum=jum+sign*suku; disp(jum) 18

TUGAS 1. Buatlah sebuah program komputer untuk memberikan kriteria nilai pada seorang mahasiswa dengan ketentuan sebagai berikut. Jika nilai < 50 nilai E, jika berada antara 50 dan 60 nilai D, jika nilai berada antara 60 dan 70 nilai C, jika nilai berada antara 70 dan 80 nilai B, jika nilai >80 nilai A. 2. 3. 4. Buatlah sebuah program komputer dengan switch-case untuk menyatakan jumlah hari pada suatu bulan pada tahun tertentu. Ingat bahwa dalam tahun masehi dikenal tahun kabisat, yaitu tahun yang 19

dapat dibagi habis dengan bilangan 4. Pada saat tahun kabisat ini, jumlah hari pada bulan Februari ada 29 hari. 20