PENGULANGAN Bagian 1 : Notasi. Tim Pengajar KU1071 Sem

dokumen-dokumen yang mirip
PENGULANGAN. Ada lima macam notasi pengulangan: 1. Berdasarkan jumlah pengulangan. repeat n times

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN

Algoritma dan Pemrograman. Oleh: Eddy Prasetyo N

PENGULANGAN SKEMA PEMROSESAN SEKUENSIAL. Tim Pengajar KU1071 Sem

PENGANTAR KOMPUTER & SOFTWARE II

PERULANGAN P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

Algoritma & Pemrograman

PENGANTAR KOMPUTER & SOFTWARE II

PENGANTAR KOMPUTER & SOFTWARE II. Pengulangan (For) Tim Pengajar KU Institut Teknologi Sumatera

LOOPING. Brigida Arie Minartiningtyas, M.Kom

List Linier (Bag. I) IF2121/Algoritma dan Struktur Data Sem. I 2016/ /25/2017 IF2121/Sem I 2017/2018 1

Perulangan Muh. Izzuddin Mahali, M.Cs. Pertemuan 3. Algoritma dan Struktur Data. PT. Elektronika FT UNY

Array (Tabel) Tim Pengajar KU1071 Sem /11/3 TW/KU1071 1

Algoritma Pemrograman

Algoritma Pemrograman

STRUKTUR DASAR ALGORITMA

Konstruksi Dasar Algoritma

LATIHAN UTS Tim Pengajar KU1071 Sem

Algoritma Pemrograman

ALGORITMA PERULANGAN

Identitas dosen POKOK BAHASAN. Struktur Pengulangan. proses perhitungan dan mengulang. perhitungan PENGULANGAN PENGULANGAN. Suherman,, ST Address

PENGULANGAN. pencacah harus bertipe integer atau karakter pernyataan adalah satu atau lebih instruksi yang. Pernyataan

LIST LINIER 1. DEFINISI

Pemrograman Prosedural FUNGSI (Subprogram) Tim Pengajar KU1071 Sem

Algoritma Pemrograman

CCH1A4 / Dasar Algoritma & Pemrogramanan

BAB II DASAR-DASAR ALGORITMA

Pengulangan/Looping (dalambahasac++)

Algoritma Pemrograman I

List Linier. IF2030/Algoritma dan Struktur Data. 11/6/2009 FNA+WDS/IF2030/Sem

Algoritma Perulangan. Kuliah algoritma dan pemrograman

1. Inggriani Liem Catatan Kuliah Algoritma & Pemrograman, Jurusan Teknik Informatika ITB

IKG2A3/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Mesin Abstrak

STRUKTUR DASAR ALGORITMA

Algoritma Pemrograman

Brigida Arie Minartiningtyas, M.Kom

PERTEMUAN 9-11 STATEMENT

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

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

Definisi Percabangan

Algoritma Pemrograman

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

Array (Tabel) bagian 2

1. Inggriani Liem Catatan Kuliah Algoritma & Pemrograman, Jurusan Teknik Informatika ITB

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA

Algoritma Pemrograman

Aturan Penulisan Algoritma Setiap Algoritma akan selalu terdiri dari tiga bagian yaitu : Judul (Header) Kamus Algoritma

Pengenalan Algoritma & Pemrograman

Algoritma dan Pemrograman. Pertemuan Ke-2 Dasar-dasar Algoritma

Algoritma dan Pemrograman Bab 05 Struktur Pengulangan. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

Pembahasan Kuis. KU1071/Pengantar Teknologi Informasi A Sem /2011

Pernyataan FOR Pernyataan WHILE Pernyataan REPEAT. Dewi Sartika,M.Kom

Teori Algoritma. Struktur Algoritma

Pertemuan Ke- 6 dan 7 Pengulangan atau Looping. Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

Perulangan / Looping

Algoritma Pemrograman

PENCARIAN BERUNTUN (SEQUENTIAL SEARCHING)

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

Algoritma Pemrograman

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

c. Hasil pencarian berupa nilai Boolean yang menyatakan status hasil pencarian. Versi 1 (Pembandingan elemen dilakukan sebagai kondisi pengulangan)

Teori Algoritma. Algoritma Perulangan

Pertemuan 3 Penyeleksian Kondisi dan Perulangan

ALGORITMA & PEMROGRAMAN

Perulangan. Bentuk Proses. 1. Perulangan For positif contoh 1 : perulangan positif untuk satu statement :

Pencarian pada Array. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

PERULANGAN Pengampu : Agus Priyanto, M.Kom

CCH1A4 / Dasar Algoritma & Pemrogramanan

1. Laporan Akhir 1. Menentukan Nilai Besar atau Nilai Kecil. Program yang di masukkan adalah :

ALGORITMA DAN PEMROGRAMAN

Bab 4 Perintah Perulangan

Prosedur. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

Struktur Perulangan Ema Utami STMIK AMIKOM Yogyakarta

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

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-4 - Hal 1

Algoritma dan Pemrograman

04/03/2013. Absensi : 10% UTS : 30% UAS : 40% Tugas & Kuis : 20% By: Vilia Eka Meyana, M.Kom Institute Bisnis dan Informatika Indonesia

Algoritma Pemrograman

CCH1A4 / Dasar Algoritma & Pemrogramanan

PERULANGAN Pengampu : Agus Priyanto, M.Kom

BAB II STACK Atau TUMPUKAN

Soal hari Jumat (16/10) Latihan 10 MS

Modul Algoritma Dan Pemrograman Pascal

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

Modul 1 Mesin Karakter 1

Algoritma. Menurut Kamus Besar Bahasa Indonesia Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah.

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

STRUKTUR KONTROL. Struktur WHILE-DO Mempunyai struktur sebagai berikut : Bentuk Umum : WHILE condition Do statement Bentuk Proses (flow chart) :

2 ATURAN PENULISAN TEKS ALGORITMA

Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom

FUNGSI. {deretan instruksi algoritmik : pemberian harga, input, output, analisa kasus, pengulangan)

PERTEMUAN 5 PENGEMBANGAN PSEUDOCODE STRUKTUR KONTROL PENGULANGAN

ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR. Pertemuan Ke-1

Mesin Abstrak. Tim Pengajar KU1071 Sem

Dasar-dasar Algoritma Dan Representasi Algoritma. Pengampu : Muhammad Zidny Naf an, M.Kom

PEMROGRAMAN VISUAL BASIC.NET ( PERULANGAN / LOOPING )

Algoritma dan Pemrograman Array/Tabel[2] Oleh: Eddy Prasetyo N

Pertemuan 2 Konsep Dasar Algoritma

Start. Baris Program. Baris Program. Baris Program. Selesai. Contoh Program Struktur berurutan menghitung luas empat persegi panjang

Transkripsi:

PENGULANGAN Bagian 1 : Notasi Tim Pengajar KU1071 Sem. 1 2009-2010 1

Tujuan Mahasiswa memahami jenis-jenis pengulangan dan penggunaannya serta memahami elemenelemen dalam pengulangan. Mahasiswa dapat menggunakan notasi pengulangan yang sesuai dengan benar Mahasiswa memahami skema pengulangan dan penggunaannya. Mahasiswa dapat memanfaatkan jenis-jenis pengulangan dengan tepat dalam menyelesaikan persoalan sederhana yang diberikan. 2

Pengulangan: Latar Belakang Melakukan suatu instruksi, bahkan aksi, secara berulang-ulang Komputer: memiliki performansi yang sama Manusia: punya kecenderungan untuk melakukan kesalahan (karena letih atau bosan) 3

Pengulangan Elemen: Kondisi pengulangan berhenti: ekspresi lojik Badan pengulangan: aksi yang diulang Notasi pengulangan: 1. Berdasarkan jumlah pengulangan 2. Berdasarkan kondisi berhenti 3. Berdasarkan kondisi pengulangan 4. Berdasarkan dua aksi 5. Berdasarkan pencacah 4

1. Berdasarkan jumlah pengulangan repeat n times Aksi Aksi akan diulang sebanyak n kali, dan bukan urusan pemrogram untuk mengelola pengulangan tersebut Dengan hanya menyebutkan pengulangan tersebut, pengulangan pasti akan berhenti suatu saat 5

Contoh 1 Repeat 4 times 6

2. Pengulangan Berdasarkan repeat aksi until kondisi-berhenti Kondisi Berhenti Aksi akan dihentikan jika kondisi-berhenti dipenuhi (berharga true), akan diulang jika kondisi-berhenti belum tercapai Badan pengulangan pada notasi ini (Aksi) minimal akan dilakukan satu kali karena pada waktu eksekusi pengulangan yang pertama tidak dilakukan test terhadap kondisi-berhenti Test terhadap kondisi berhenti dilakukan setelah Aksi dilaksanakan Pengulangan berpotensi mengalami kebocoran, jika ada kemungkinan bahwa seharusnya Aksi tidak pernah boleh dilakukan untuk kasus tertentu 7

Contoh 2 {min ada 1 kentang dlm kantong} if kantong belum kosong then if kantong belum kosong then if kantong belum kosong then... if kantong belum kosong then repeat until kantong kosong 8

3. Pengulangan Berdasarkan Kondisi Pengulangan while (kondisi-pengulangan) do aksi {Kondisi berhenti dicapai di titik program ini} Aksi akan dilakukan selama kondisi-pengulangan masih dipenuhi (berharga true) Test terhadap kondisi-pengulangan dilakukan setiap kali sebelum aksi dilaksanakan Pengulangan ini berpotensi untuk menimbulkan aksi kosong (tidak pernah melakukan apa-apa) karena pada test yang pertama, kondisi-pengulangan tidak dipenuhi (berharga false) Badan pengulangan (aksi) pada notasi ini mungkin tidak akan pernah dilakukan, karena sebelum aksi yang pertama dieksekusi dilakukan test terhadap kondisi-berhenti 9

Contoh 3 {kantong boleh kosong} if kantong tidak kosong then if kantong tidak kosong then if kantong tidak kosong then... if kantong tidak kosong then While kantong tidak kosong do {kantong kosong} 10

Contoh 4 {min ada 1 kentang dlm kantong} if kantong tidak kosong then if kantong tidak kosong then if kantong tidak kosong then... if kantong tidak kosong then While kantong tdk kosong do {kantong kosong} 11

4. Berdasarkan dua aksi Iterate Aksi-1 Stop (kondisi berhenti Aksi-2 {kondisi berhenti dicapai di titik program ini} Pengulangan ini seolah-olah adalah gabungan antara bentuk pengulangan kedua dan ketiga Mekanisme yang dilakukan oleh pengulangan ini adalah dengan melakukan secara otomatis Aksi-1 pada eksekusi yang pertama kemudian dilakukan test terhadap kondisi berhenti Tergantung kepada kondisi berhenti yang ditest: Aksi-2 akan diaktifkan dan kemudian aksi-1 yang berikutnya diulang, atau Pengulangan dihentikan karena efek neto dari aksi-1 menghasilkan kondisi berhenti Pengulangan ini berguna untuk kasus-kasus di mana Aksi-2 merupakan hal yang harus dilakukan tergantung dari hasil Aksi-1. 12

Contoh 5 {min ada 1 kentang yg dipegang} if kantong tidak kosong then Ambil1Kentang if kantong tidak kosong then Ambil1Kentang... if kantong tidak kosong then Ambil1Kentang iterate Stop kantong kosong Ambil1Kentang 13

5. Pengulangan Berdasarkan Pencacah nama-pencacah traversal [range-harga] aksi nama-pencacah harus suatu type yang terdefinisi suksesor dan predesesornya, setelah pelaksanaan pengulangan selesai, harga yang tersimpan pada nama-pencacah tidak terdefinisi: jika hendak dipakai, harus didefinisikan kembali Aksi akan dilakukan dengan memperhitungkan harga-harga dari nama-pencacah yang di- jelajahi Dengan memakai pengulangan ini, pemrogram tidak perlu melakukan operasi terhadap suksesor/predesesor karena setiap kali selesai melakukan Aksi, otomatis mesin akan melakukan operasi untuk mendapatkan suksesor dari harga yang berlaku saat itu untuk nama range-harga bisa dari kecil ke besar atau sebaliknya 14

Contoh 6 KupasKentang1 KupasKentang2 KupasKentang3 KupasKentang4 i traversal [1..4] KupasKentang(i) 15

Berapa Hello di layar? Stop not(true) Repeat output( Hello ) Until stop Repeat output( Hello ) Until TRUE Repeat output( Hello ) Until FALSE 16

Berapa Hello di layar? (2) i 1 While (i<5) do output( Hello ) While FALSE do output( Hello ) While TRUE do output( Hello ) 17

Contoh Penggunaan Deskripsi Persoalan: Tuliskanlah sebuah program yang membaca sebuah nilai N (integer positif lebih besar nol), dan menuliskan output nilai 1,2,3,4, s.d. N berderet ke bawah sbb 1 2 3 N Contoh: Jika N = 3, maka outputnya adalah 1 2 3 Jika N = 1, maka outputnya adalah 1 18

Program TULISBIL2 Program TULISBIL2 {dibaca N 0, menuliskan 1,2,3, N berderet ke bawah, dengan bentuk repeat until } Kamus i,n : integer {bilangan yang akan ditulis} Algoritma: input (N) i 1 repeat output (i) i i + 1 until (i>n) Catatan: 1. Dengan bentuk ini, harus dijamin bahwa nilai N yang dibaca sesuai dengan spesifikasi, yaitu N 0. Jika nilai yang diberikan tidak sesuai dengan spesifikasi maka akan tertulis angka 1. Untuk mengatasi hal ini dapat dilakukan misalnya bahwa nilai N yang dibaca diulang sehingga memenuhi persyaratan N 0. 2. Nama yang didefinisikan sebagai i akan bernilai 1.. N+1. 3. Anda dapat mendefinisikan i sebagai bilangan yang sudah ditulis dan memulai i dengan 0. Dalam hal ini nilai i adalah 0.. N. 19

Program TULISBIL3 Program TULISBIL3 {dibaca N 0, menuliskan 1,2,3, N berderet ke bawah, dengan bentuk while.. do } Kamus i,n : integer {bilangan yang akan ditulis} Algoritma : input (N) i 1 while i N do output (i) i i + 1 {i > N} Catatan: 1. Dengan bentuk ini, nilai 1 belum tentu ditulis. Jika ternyata pengguna memberikan nilai N yang negatif, program tidak menuliskan apa-apa karena kondisi yang diperiksa pertama kali (i N) menghasilkan false. 2. Nama yang didefinisikan sebagai i akan bernilai 1.. N+1. 3. Anda dapat mendefinisikan i sebagai bilangan yang sudah ditulis dan memulai i dengan 0. Dalam hal ini nilai i adalah 0.. N. 20

Program TULISBIL5 Program TULISBIL5 {dibaca N 0, menuliskan 1,2,3, N berderet ke bawah, dengan bentuk iterate Kamus i,n : integer {bilangan yang akan ditulis} Algoritma: input (N) i traversal [1..N] output (i) Penjelasan: 1. Dengan bentuk ini ekivalen dengan bentuk iterate, untuk i [1..N], namun pertambahan nilai i ditangani secara implisit oleh pemroses bahasa 2. Jika N yang diberikan oleh pengguna bernilai negatif, maka tidak akan terjadi aksi penulisan karena nilai i di luar domain [1..N] 21

Translasi ke Pascal (1) Algoritma while <kondisi-ulang> do Aksi repeat Aksi until <kondisi-stop> Pascal while (kondisi-ulang) do begin Aksi end; repeat Aksi until (kondisi-stop); 22

Translasi ke Pascal (2) Algoritma iterate Aksi-A stop <kondisi-stop> Aksi-B Pascal (* deklarasi stop : boolean *) stop := false; repeat Aksi-A; if (kondisi-stop) then stop := true else Aksi-B; until (stop); 23

Translasi ke Pascal (3) Algoritma i traversal [Awal..Akhir] Aksi Pascal /* Jika Awal <= Akhir */ for (i := Awal to Akhir) do begin Aksi end; /* Jika Awal >= Akhir */ for (i := Awal downto Akhir) do begin Aksi end; 24