MODUL PRAKTIKUM 3 alpro

10

Click here to load reader

Transcript of MODUL PRAKTIKUM 3 alpro

Page 1: MODUL PRAKTIKUM 3 alpro

MODUL PRAKTIKUM 3

ALGORITMA DAN PEMROGRAMAN 1

VERSI 3.0

Oleh :

Fikri FS, Helena NI, Nova SA, Restika K, Siti H, Trimans Y

PROGRAM STUDI PENDIDIKAN ILMU KOMPUTER

FAKULTAS PENDIDIKAN MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS PENDIDIKAN INDONESIA

BANDUNG

2011

Page 2: MODUL PRAKTIKUM 3 alpro

Pengulangan

Pengulangan (looping) adalah suatu bagian yang bertugas melakukan kegiatan mengulang suatu

proses sesuai dengan yang diinginkan. Banyak dari aplikasi perangkat lunak yang melakukan

pekerjaan berulang-ulang sampai sebuah kondisi yang diinginkan atau sampai kondisi yang

diinginkan terpenuhi. Oleh karena itu pengulangan merupakan bagian yang terpenting dalam

pemrograman karena dengan adanya pengulangan, pembuat program tidak perlu menulis kode

program sebanyak pengulangan yang diinginkan.

Struktur pengulangan secara umum biasanya terdiri atas dua bagian, yakni:

o Kondisi Pengulangan, yaitu ekspresi boolean yang harus dipenuhi untuk melaksanakan

pengulangan. Kondisi ini ada yang dinyatakan secara eksplisit oleh pembuat program atau

dikelola sendiri oleh komputer.

o Badan (body) pengulangan, yaitu bagian algoritma yang diulang.

Sesuai struktur tersebut maka pengulangan mempunyai beberapa bagian yang harus dipenuhi

antara lain:

o Inisialisasi

Inisialisasi adalah tahap persiapan membuat kondisi awal sebelum melakukan pengulangan,

misalnya mengisi variabel dengan nilai awal. Tahap ini dilakukan sebelum memasuki bagian

pengulangan.

o Proses

Tahap proses terjadi di dalam bagian pengulangan dimana berisi semua proses yang

dilakukan secara berulang-ulang.

o Iterasi

Iterasi terjadi di dalam pengulangan dimana merupakan kondisi pertambahan agar

pengulangan dapat terus berjalan.

o Terminasi / Kondisi Pengulangan

Terminasi adalah kondisi berhenti dari pengulangan, kondisi berhenti sangat penting dlm

pengulangan agar pengulangan dapat berhenti. Kondisi pengulangan adalah kondisi yang

dipenuhi oleh kondisi jalannya algoritma untuk masuk kedalam blok pengulangan.

Pengulangan merupakan salah satu inti dari analisis kasus pada pembuatan algoritma. Banyak kasus

yang penyelesaianya dengan aksi yang harus dikerjakan berulang-ulang agar kasus tersebut

terselesaikan, misal:

Page 3: MODUL PRAKTIKUM 3 alpro

Kasus Bahasa Algoritmik

Menuliskan kata “selamat siang” ke layar sebanyak 10 kali, maka harus diselesaikan dengan membuat kode pengulangan yang akan dijalankan oleh compiler atau interpreter.

i : integer for i= 0 to 10 do output (“selamat siang”) {end for}

Mencari jumlah dari sepuluh bilangan positif pertama, maka harus diselesaikan dengan cara penjumlahan bilangan 1 sampai 10 dengan menggunakan pengulangan yang dijalankan sebanyak 10 kali. Misalkan membuat nilai awal dari hasil yaitu 0, kemudian setiap dijalankan blok pengulangan dirinya ditambahkan dengan nilai berapa kali pengulangannya.

i : integer hasil : integer hasil <- 0 for i=0 to 10 do hasil <- hasil+1 {end for}

1. For

Pengulangan menggunakan for biasanya digunakan untuk pengulangan yang sudah jelas perlu

dilakukan berapa kali, dengan kata lain jumlah pengulangannya sudah diketahui oleh pembuat

program. Untuk mencacah berapa kali pengulangan dilakukan, kita memerlukan variabel pencacah

atau biasa disebut counter. Variabel ini nillainya selalu bertambah satu setiap perulangan dilakukan.

Apabila nilai counter telah mencapai jumlah yang ditentukan, maka pengulangan berhenti.

Deklarasi penggunaan pengulangan for adalah sebagai berikut:

Bahasa Algoritmik Bahasa C {pengulangan for positif} for nama_variabel <- nilai_awal to nilai_berhenti do {proses} ............ {end for}

/* pengulangan for positif */ for(nama_variabel=nilai_awal;nama_variabel operator_relasi;nama_variabel++){ //proses ............... }

{pengulangan for positif} for i <- 1 to 10 do {proses} ............ {end for}

/* pengulangan for positif */ for(i=1;i<=10;i++){ //proses ............... }

{pengulangan for negatif} for nama_variabel <- nilai_awal

/* pengulangan for positif */ for(nama_variabel=nilai_awal;nama_variabel

Page 4: MODUL PRAKTIKUM 3 alpro

downto nilai_berhenti do {proses} ............ {end for}

operator_relasi;nama_variabel--){ //proses ............... }

{pengulangan for negatif} for i <- 10 downto 1 do {proses} ............ {end for}

/* pengulangan for negatif */ for(i=10;i>=1;i--){ //proses ............... }

Deklarasi pengulangan for berikut: for nama_variabel <- nilai_awal to nilai_berhenti do

{proses} ............

{end for}

Berarti proses yang ada dalam pengulangan for dilakukan mulai dari 1 sampai 10(pengulangan

dilakukan 10 kali). Proses diatas jika diurut bagian-bagiannya maka akan menjadi seperti berikut:

Tahapan Deklarasi Penjelasan

Inisialisasi i<-1

Tahapan mengeset nilai awal dari pengulangan dimana pengulangan dilakukan mulai dari angka 1

Iterasi to

Tahapan pertambahan agar pegulangan dapat berjalan mulai dari awal sampai nilai berhenti

Terminasi nilai_berhenti

Merupakan nilai berhenti dari pengulangansehingga ada saat dimana pengulangan harus berhenti yaitu ketika kondisi berhenti telah dipenuhi yang dalam hal ini berarti pengulangan dilakukan selama 10 kali dan pengulangan dilakukan selama nilai variabel i lebih kecil atau sama dengan 10

Proses Proses pengulangan Proses yang perlu dilakukan dalam pengulangan

Page 5: MODUL PRAKTIKUM 3 alpro

Contoh Kasus:

2. While

Pengulangan while biasa digunakan jika jumlah pengulangan tidak diketahui. Pengulangan

while akan melakukan pengulangan selama kondisi pengulangan terpenuhi. Deklarasi dari while

sebagai berikut:

HARAP DIINGAT!!

Pengulangan for dipilih jika jumlah pengulangan diketahui

dengan pasti, tipe pengulangan yang telah diketahui jumlah

pengulangan yang harus dilakukan, biasanya dengan

transfersal.

Mencari jumlah dari sepuluh bilangan positif pertama, maka

harus diselesaikan dengan cara penjumlahan bilangan 1

sampai 10 dengan menggunakan pengulangan yang

dijalankan sebanyak 10 kali. Misalkan membuat nilai awal

dari hasil yaitu 0, kemudian setiap dijalankan blok

pengulangan dirinya ditambahkan dengan nilai berapa kali

pengulangannya.

Page 6: MODUL PRAKTIKUM 3 alpro

Bahasa Algoritmik Bahasa C {inisialisasi} .............. While Kondisi_pengulangan do {proses} ............. {iterasi} {end while}

//inisialisasi .............. While {Kondisi_pengulangan){ //proses ............. //iterasi }

i : integer {inisialisasi} i <- 1 while i <= 5 do {proses} ............. {iterasi} i <- i + 1 {end while}

int i; //inisialisasi i = 1; while (i <= 5){ //proses .......... //iterasi i = i +1 }

Sesuai kondisi di atas pengulangan akan terus dilakukan selama nilai variabel lebih kecil dari

atau sama dengan 5. Variabel i terus ditambah 1 dan 5 sebagai kondisi berhenti. Jika kondisi

berhenti pengulangan tidak pernah tercapai, maka pengulangan akan dilakukan tanpa henti.

Bila proses while dijelaskan maka bagian-bagiannya adalah:

Tahapan Deklarasi Penjelasan

Inisialisasi integer i<-1

Tahapan meempersiapkan nilai awal dari pengulangan dimana pengulangan dilakukan mulai dari angka 1

Kondisi Pengulangan While i < = 5 do

Kondisi persyaratan apakah blok pengulangan dieksekusi atau tidak.

Proses Proses pengulangan

Proses yang perlu dilakukan dalam pengulangan.

Iterasi i <- i + 1 Tahapan pertambahan agar

pengulangan dapat berjalan disertai dengan pertambahan nilai variabel yang berpengaruh pada kondisi pengulangan dan terminasi.

Page 7: MODUL PRAKTIKUM 3 alpro

3. Repeat

Pengulangan repeat biasa digunakan jika jumlah pengulangan tidak diketahui. Berbeda dengan

while karena kondisi pengulangan ada di bagian bawah blok pengulangan. Pengulangan repeat

minimal selalu dilakukan sekali karena kondisi pengulangan ada di bagian bawah. Dalam

penggunaannya di bahasa C kita mengenalnya dengan do-while. Untuk deklarasinya adalah:

Bahasa Algoritmik Bahasa C {inisialisasi} .............. repeat {proses} ............. {iterasi} until Kondisi_pengulangan

//inisialisasi .............. do{ //proses ............. //iterasi }while (kondisi pengulangan);

i : integer {inisialisasi} i <- 1 repeat {proses} ............. {iterasi} i <- i + 1 until (i=2)

int i; //inisialisasi i = 1; do { //proses .......... //iterasi i = i +1 }while (i<2);

Pada bahasa pemrograman C repeat lebih dikenal dengan nama do-while. Aturan dari do-while

yaitu melakukan pengulangan selama kondisi setelah deklarasi while, sehingga batas dari

kondisi tersebut adalah menggunakan kondisi yang diperbolehkan untuk pengulangan berjalan.

Untuk tahapan-tahapan pengulangan repeat adalah sebagai berikut:

Tahapan Deklarasi Penjelasan

Inisialisasi i<-1 Tahapan mempersiapkan nilai

awal dari dari variabel yang berpengaruh pada kondisi pengulangan atau kondisi terminasi pengulangan

HARAP DIINGAT!!

Pengulangan while dipilih jika jumlah pengulangan tidak

diketahui dengan pasti dan diperlukan pengecekan kondisi

pengulangan di awal blok, sehingga jika tidak memenuhi

kondisi pengulangan ada kemungkinan pengulangan tidak

dikerjakan sama sekali.

Page 8: MODUL PRAKTIKUM 3 alpro

Proses Proses pengulangan

Proses yang perlu dilakukan dalam pengulangan.

Iterasi i <- i + 1

Tahapan pertambahan agar pengulangan dapat berjalan disertai dengan pertambahan nilai variabel yang berpengaruh pada kondisi pengulangan dan terminasi.

Terminasi (i = 2)

Merupakan tahapan dimana merupakan pernyataan kapan pengulangan harus tetap berjalan dan berhenti

4. Pengulangan di dalam Pengulangan

Seperti halnya percabangan, pengulangan pun diperbolehkan mempergunakan pengulangan

lain di blok pengulangan tersebut. Misalnya dalam blok pengulangan for terdapat pengulangan

while dan repeat, dan didalam pengulangan while terdapat blok pengulangan for .

Contoh kasus: o Buatlah sebuah program yang menerima masukan dari user berupa angka dan akan membuat

tampilan barisan bintang, jika masukkannya 5 maka tampilan seperti berikut: * ** *** **** *****

HARAP DIINGAT!!

Pengulangan repeat dipilih jika jumlah pengulangan tidak

diketahui dengan pasti dan tidak diperlukan pengecekan

kondisi pengulangan di awal blok, sehingga minimal blok

pengulangan dikerjakan sekali.

Pengulangan for

Pengulangan while

Pengulangan repeat

Pengulangan for

Page 9: MODUL PRAKTIKUM 3 alpro

Penyelesaian :

Page 10: MODUL PRAKTIKUM 3 alpro

Latihan Soal

1. Buatlah sebuah program yang menerima masukan angka dari user dan program akan membuat faktorial dari angka tersebut, tampilkan hasil faktorialnya.

2. Buatlah sebuah program yang menerima masukan dari user dan program akan menjumlahkan urutan angka tersebut yang genap saja, tampilkan hasil penjumlahan angka genap tersebut.