Algoritma Pemrograman

dokumen-dokumen yang mirip
Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

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

Struktur Pengulangan

ALGORITMA PERULANGAN

STRUKTUR DASAR ALGORITMA

Algoritma Pemrograman

Algoritma Pemrograman

Konstruksi Dasar Algoritma

STRUKTUR DASAR ALGORITMA

Algoritma Pemrograman

STRUKTUR DASAR ALGORITMA

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma & Pemrograman

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN

LOOPING. Brigida Arie Minartiningtyas, M.Kom

Algoritma Pemrograman

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

Algoritma Pemrograman

Algoritma Pemrograman

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Pertemuan 3 Penyeleksian Kondisi dan Perulangan

Algoritma Pemrograman

Definisi Percabangan

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

Algoritma Pemrograman

PENGULANGAN Bagian 1 : Notasi. Tim Pengajar KU1071 Sem

Pertemuan 3 Penyeleksian Kondisi

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

PEMILIHAN. Runtunan. Dian Palupi Rini, M.Kom

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

Algoritma & Pemrograman 1. Muhamad Nursalman Pendilkom/Ilkom Universitas Pendidikan Indonesia

Modul Algoritma Dan Pemrograman Pascal

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

FUNGSI MINGGU KE: 4 TUJUAN: Mahasiswa dapat memahami definisi fungsi. Mahasiswa dapat mendefinisikan fungsi. Mahasiswa dapat menggunakan fungsi.

Pendahuluan. Kuadran I (X>0, Y>0) Kuadran II (X<0, Y>0) Kuadran IV (X>0, Y<0) Kuadran III (X<0, Y<0)

PRAKTIKUM 7 TIPE DATA TERSTRUKTUR. Larik : deretan data yang punya type data sejenis. Misalnya : Daftar Nomor Telpon, Tabel Pajak dll.

1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada.

Algoritma Pemrograman

Chapter 5 Choice. repeatedly if tanda 2 on label: lakukan proses potong 2 if tanda 3 on label: lakukan proses potong 3 until switched off program 5.

Algoritma Pemrograman

Pertemuan XII ALGORITMA. Algoritma & Pemrograman Ken Kinanti P 1. {Pencarian Beruntun / Sequential Search}

Teori Algoritma. Struktur Algoritma

ALGORITMA DAN PEMROGRAMAN

Pertemuan Ke-5 Penyeleksian Kondisi. Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

Algoritma Pemrograman I

PERTEMUAN 9-11 STATEMENT

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

For pencacah awal to akhir do For pencacah akhir downto awal do Aksi endfor

SOAL PASCAL A. 1. Lengkapi Source Code Dibawah ini : {* Program Menghitung dengan Operator Matematika*}

Bab 1 Algoritma dan Pemrograman Tersruktur

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

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

Modul Algoritma dan Pemograman Rismira Andriyani, S.Kom i

a. TRUE b. FALSE c. Jawaban A dan B keduanya dimungkinkan benar d. Tidak dapat ditentukan e. Tidak ada jawaban di antara A, B, C, D yang benar

Teori Algoritma. Algoritma Perulangan

1. Kompetensi Mengenal dan memahami algoritma percabangan yang komplek.

PROSEDUR (Lanjutan) Parameter. Mahasiswa dapat memahami penggunaan prosedur dengan parameter. Mahasiswa dapat membuat prosedur dengan parameter.

Contoh 1: Akan dicetak angka 1 sampai 10 dengan menggunakan perulangan for

CCH1A4 / Dasar Algoritma & Pemrogramanan

ALGORITMA DAN STRUKTUR DATA 1

Pertemuan 4 Diagram Alur / Flowchart

Algoritma Pemrograman

Array. Teknik Informatika Politeknik Negeri Batam

BAB II DASAR-DASAR ALGORITMA

CCH1A4 / Dasar Algoritma & Pemrogramanan

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

Algoritma dan Struktur Data

MODUL PRAKTIKUM ALGORITMA PEMROGRAMAN TEKNIK INFORMATIKA

PENGERTIAN ALGORITMA

Algoritma Brute Force (Bagian 1) Oleh: Rinaldi Munir

PERSEGI ANGKA-HURUF VERTIKAL

Pertemuan 4 Perulangan

PENYELEKSIAN KONDISI dengan IF

Algoritma Pemrograman

PERULANGAN Pengampu : Agus Priyanto, M.Kom

Algoritma Pemrograman

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

2.4. Struktur Branching

Minggu IV : Teori dan Workshop. PERULANGAN (LOOP/Iterasi/Repetisi)

BAB I TUJUAN DAN LANDASAN TEORI

Algoritma Brute Force

PENGULANGAN SKEMA PEMROSESAN SEKUENSIAL. Tim Pengajar KU1071 Sem

Bubble Sort (Pengurutan Gelembung / Pemberatan)

Struktur Perulangan. Sesi. 3.1 Pernyataan while do. 3.2 Pernyataan repeat... until

Teknik Percabangan. Brigida Arie Minartiningtyas, M.Kom

Algoritma dan Struktur Data

Chapter 5. Struktur Kontrol Perulangan

Rekursif/ Iterasi/ Pengulangan

Transkripsi:

Algoritma Pemrograman Pertemuan Ke-7 (Pengulangan atau Looping [2]) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1

Sub Pokok Bahasan Struktur WHILE Struktur REPEAT WHILE vs REPEAT S1 Teknik Informatika-Unijoyo 2

Struktur WHILE while kondisi do aksi endwhile aksi (atau runtunan aksi) dilaksanakan berulang kali selama kondisi bernilai true. Jika kondisi bernilai false, badan pengulangan tidak akan dilaksanakan, yang berarti pengulangan selesai Pengulangan harus berhenti. Pengulangan yang tidak pernah berhenti menandakan bahwa logika algoritma tersebut salah Pengulangan berhenti apabila kondisi bernilai false. Agar kondisi suatu saat bernilai false, maka di dalam badan pengulangan harus ada instruksi yang mengubah nilai peubah kondisi S1 Teknik Informatika-Unijoyo 3

Contoh 1: Mencetak tulisan Informatika sebanyak 5 kali Algoritma CETAK_INFORMATIKA { Mencetak Informatika sebanyak 5 kali } DEKLARASI k : integer { pencacah pengulangan } DESKRIPSI : k 1 while k 5 do { ulangi sebanyak 5 kali } write( Informatika ) k k+1 endwhile { kondisi berhenti: k > 5} Program CETAK_INFORMATIKA; { Mencetak Informatika sebanyak 5 kali } (* DEKLARASI *) var k : integer; (* DESKRIPSI *) k := 1; while k <= 5 do writeln( Informatika ); k := k + 1; end; end. S1 Teknik Informatika-Unijoyo 4

Contoh 2: Menghitung jumlah angkaangka dari 1 sampai N. Nilai N dibaca terlebih dahulu dari piranti masukan Misalnya, jika N = 5, maka jumlah angka dari 1 sampai 5 adalah deret 1 + 2 + 3 + 4 + 5 = 15 Algoritma PENJUMLAHAN_DERET { Menjumlahkan deret 1 + 2 + 3 +... + N, dengan N adalah bilangan bulat positif yang dibaca dari piranti masukan. Jumlah deret dicetak ke piranti keluaran } DEKLARASI k : integer { pencacah pengulangan } N : integer jumlah : integer DESKRIPSI : read(n) { banyaknya suku deret } jumlah 0 k 1 { inisialisasi } while k N do jumlah jumlah + k k k + 1 endwhile { kondisi berhenti: k > N } write(jumlah) S1 Teknik Informatika-Unijoyo 5

Program PENJUMLAHAN_DERET; {Menjumlahkan deret 1 + 2 + 3 +... + N, dengan N adalah bilangan bulat positif yang dibaca dari piranti masukan} (* DEKLARASI *) var k, N, jumlah : integer; (* DESKRIPSI *) write( Masukkan banyaknya bilangan : ); readln(n); k := 1; jumlah := 0; while k <= N do jumlah := jumlah + k; k := k + 1; end; writeln(jumlah); end. S1 Teknik Informatika-Unijoyo 6

Contoh 3: Menghitung nilai rata-rata dari N buah data bilangan bulat yang dibaca dari piranti masukan. Nilai ratarata adalah jumlah seluruh nilai dibagi dengan banyaknya nilai Misalkan, N = 5 dan data bilangan yang dibaca berturut-turut adalah 12, 10, 6, 2, 4, maka nilai rataratanya: (12 + 10 + 6 + 2 + 4)/5 = 34/5 = 6.8 Algoritma HITUNG_RATA_RATA { Menghitung rata-rata N buah bilangan bulat yang dibaca dari piranti masukan. N > 0 } DEKLARASI k : integer { pencacah pengulangan } N : integer { jumlah data, > 0 } X : integer {bilangan bulat yang dibaca} jumlah : integer rata : real DESKRIPSI : read(n) { banyaknya suku deret } jumlah 0 k 1 { inisialisasi } while k N do read(x) jumlah jumlah + x k k + 1 endwhile { kondisi berhenti: k > N } rata jumlah/n write(rata) S1 Teknik Informatika-Unijoyo 7

Program HITUNG_RATA_RATA; { Menghitung rata-rata N buah bilangan bulat yang dibaca dari piranti masukan. N > 0 } (* DEKLARASI *) var k, N, x, jumlah : integer; rata : real; (* DESKRIPSI *) write( Masukkan banyaknya suku deret : ); readln(n); jumlah := 0; k := 1; while k <= N do write( Bilangan ke-,k, : );readln(x); jumlah := jumlah + x; k := k + 1; end; rata := jumlah/n; writeln(rata); end. S1 Teknik Informatika-Unijoyo 8

Perihal WHILE Kesalahan yang biasa terjadi pada penggunaan struktur WHILE adalah tidak menuliskan instruksi yang mengubah peubah kondisi, misalnya tidak menuliskan instruksi k k+1. Sehingga pengulangan tidak pernah memenuhi kondisi pengulangan berhenti WHILE juga dapat digunakan sebagai penggunaan FOR. (WHILE juga dapat digunakan untuk proses yang jumlah pengulangannya tidak dapat ditentukan) S1 Teknik Informatika-Unijoyo 9

Contoh 4: Dalam algoritma JUMLAH_DAN_KALI, ditetapkan bahwa dari masukan nilai integer x, jika x ganjil, maka peubah M yang telah diinisialisasi dengan 1 ditambah 10, dan jika x genap maka M dikali 10 Pengulangan ini akan terus dilakukan selama x tidak sama dengan 0 Algoritma JUMLAH_DAN_KALI {Menjumlahkan atau mengalikan sebuah bilangan dengan 10, bergantung kepada nilai x (genap atau ganjil)} DEKLARASI M : integer x : integer DESKRIPSI : M 1 { inisialisasi M dengan 1 } read(x) while x 0 do {lakukan komputasi selama x tidak nol } if x mod 2 = then { x ganjil } M M+10 else M M*10 endif read(x) endwhile { x = 0 } write(m) S1 Teknik Informatika-Unijoyo 10

Program JUMLAH_DAN_KALI; { Menjumlahkan atau mengalikan sebuah bilangan dengan 10, bergantung kepada nilai x (genap atau ganjil) } (* DEKLARASI *) var M, x : integer; (* DESKRIPSI *) M := 1; write( Masukkan bilangan : ); readln(x); while x <> 0 do if x mod 2 = 1 then M := M + 10 else M := M * 10; end; write( Masukkan bilangan : ); readln(x); end; writeln(m); end. S1 Teknik Informatika-Unijoyo 11

Struktur REPEAT repeat aksi until kondisi Notasi ini mendasarkan pengulangan pada kondisi boolean. Aksi di dalam badan pengulangan diulang sampai kondisi boolean bernilai true. Dengan kata lain, jika kondisi boolean masih false, pengulangan masih terus dilakukan. Karena proses pengulangan suatu saat harus berhenti, maka di dalam badan pengulangan harus ada aksi yang mengubah nilai peubah kondisi Struktur REPEAT mempunyai makna yang sama dengan WHILE, dan dalam beberapa masalah kedua struktur tersebut komplemen satu sama lain S1 Teknik Informatika-Unijoyo 12

Contoh 1: Mencetak tulisan Informatika sebanyak 5 kali Algoritma CETAK_INFORMATIKA { Mencetak Informatika sebanyak 5 kali } DEKLARASI k : integer { pencacah pengulangan } DESKRIPSI : k 1 { inisialisasi } repeat write( Informatika ) k k+1 until k > 5 Program CETAK_INFORMATIKA; var k : integer; k := 1; repeat writeln( Informatika ); k := k + 1; end; until k > 5; end. Badan pengulangan berisi dua instruksi: write( Informatika ) dan k k+1 Kondisi berhenti pengulangan adalah k > 5, artinya jika k masih 5, maka badan pengulangan masih boleh dimasuki k harus terdefinisi nilainya sebelum pengulangan dilaksanakan pertama kali. Karena itu, pada bagian inisialisasi, k diisi dengan nilai 1 Instruksi yang mengubah nilai peubah kondisi adalah instruksi k k+1. Instruksi ini mencacah jumlah pengulangan, sehingga jika k > 5, pengulangan dihentikan S1 Teknik Informatika-Unijoyo 13

Contoh 2: Menghitung 1 + 2 + 3+ + N Nilai N dibaca terlebih dahulu (N > 0). Algoritma PENJUMLAHAN_DERET { Menjumlahkan deret 1 + 2 + 3 +... + N, dengan N adalah bilangan bulat positif yang dibaca dari piranti masukan. Jumlah deret dicetak ke piranti keluaran } DEKLARASI k : integer { suku deret } N : integer { banyaknya suku deret, N > 0 } jumlah : integer { jumlah deret } DESKRIPSI : read(n) { banyaknya suku deret } jumlah 0 { inisialisasi jumlah deret } k 1 { suku deret yang pertama } repeat jumlah jumlah + k { jumlah deret sekarang } k k + 1 { suku deret berikutnya } until k > N write(jumlah) S1 Teknik Informatika-Unijoyo 14

Program PENJUMLAHAN_DERET; { Menjumlahkan deret 1 + 2 + 3 +... + N, dengan N adalah bilangan bulat positif yang dibaca dari piranti masukan } (* DEKLARASI *) var k, N, jumlah : integer; (* DESKRIPSI *) write( Masukkan banyaknya bilangan : ); readln(n); k := 1; jumlah := 0; repeat jumlah := jumlah + k; k := k + 1; end; until k > N; writeln(jumlah); end. S1 Teknik Informatika-Unijoyo 15

Contoh 3: Menghitung nilai rata-rata N buah data bilangan bulat yang dibaca dari piranti masukan Algoritma HITUNG_RATA_RATA { Menghitung rata-rata N buah bilangan bulat yang dibaca dari piranti masukan. N > 0 } DEKLARASI k : integer { pencacah banyak bilangan } N : integer { banyak bilangan, N > 0 } x : integer { bilangan bulat yang dibaca } jumlah : integer { pencatat jumlah bilangan } rata : real { rata-rata bilangan } DESKRIPSI : read(n) jumlah 0 { inisialisasi } k 1 { inisialisasi pencacah banyak bilangan } repeat read(x) jumlah jumlah + x k k + 1 until k > N rata jumlah/n write(rata) S1 Teknik Informatika-Unijoyo 16

Program HITUNG_RATA_RATA; { Menghitung rata-rata N buah bilangan bulat yang dibaca dari piranti masukan. N > 0 } (* DEKLARASI *) var k, N, x, jumlah : integer; rata : real; (* DESKRIPSI *) write( Masukkan banyaknya suku deret : ); readln(n); jumlah := 0; k := 1; repeat write( Bilangan ke-,k, : );readln(x); jumlah := jumlah + x; k := k + 1; end; until k > N; rata := jumlah/n; writeln(rata); end. S1 Teknik Informatika-Unijoyo 17

WHILE vs REPEAT Seperti halnya pada struktur WHILE, struktur REPEAT juga dapat digunakan untuk masalah yang jumlah pengulangannya tidak diketahui atau tidak dapat ditentukan Pemilihan struktur WHILE atau REPEAT bergantung pada karakteristik dari persoalan. Ada permasalahan yang hanya benar bila menggunakan struktur WHILE, tetapi bisa fatal bila menggunakan REPEAT Perbedaan antara struktur REPEAT dan WHILE: struktur REPEAT kondisi pengulangan diperiksa pada akhir pengulangan. Jadi, instruksi di dalam badan pengulangan dilaksanakan dulu, baru kemudian pengetesan kondisi dilakukan. Sehingga badan pengulangan dilaksanakan paling sedikit satu kali struktur WHILE kondisi pengulangan diperiksa di awal pengulangan. Jadi, instruksi di dalam badan pengulangan hanya dapat dilaksanakan bila pengetesan kondisi menghasilkan nilai true. Sehingga, badan pengulangan mungkin tidak akan pernah dilaksanakan bila kondisi pengulangan pertama kali bernilai false S1 Teknik Informatika-Unijoyo 18

WHILE vs REPEAT: Jumlah Pengulangan Algoritma PERBANDINGAN_WHILE_REPEAT {Algoritma untuk menunjukkan perbandingan pengulangan WHILE dan REPEAT tentang jumlah pengulangannya} DEKLARASI x : integer DESKRIPSI : x 7 while x < 5 do write(x) x x + 1 endwhile Algoritma PERBANDINGAN_WHILE_REPEAT {Algoritma untuk menunjukkan perbandingan pengulangan WHILE dan REPEAT tentang jumlah pengulangannya} DEKLARASI x : integer DESKRIPSI : x 7 repeat write(x) x x + 1 until x > 5 Hasil dari algoritma tidak ada (karena badan pengulangan tidak pernah dimasuki) Hasil dari algoritma adalah 8 (karena badan pengulangan telah dimasuki satu kali) S1 Teknik Informatika-Unijoyo 19