P. 1
laporan praktikum

laporan praktikum

|Views: 585|Likes:
Published by Heryanto Nami Jaya

More info:

Published by: Heryanto Nami Jaya on Feb 09, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

04/27/2013

pdf

text

original

BAB I IF Penyeleksian kondisi adalah penentuan kondisi yang memenuhi dalam penyeleksian.

Penyeleksian kondisi ini hubungannya dengan operasi relasi yang membandingkan antara dua kondisi. Di dalam Pascal, penyeleksian kondisi menggunakan statement If dan statement Case. A. STATEMENT IF If atau jika yaitu penyeleksian dengan menggunakan logika pengandaian. Statement if mempunyai dua bentuk yaitu If-Then dan If-Then..Else. Seperti dalam looping, statement if juga mempunyai bentuk tersarang (nested if). 1. persyaratan selection If • • • • Pernyataan harus bernilai Boolean (False atau true ) Meentukan aksi yang dilakukan jika kondisi tersebut memenuhi Setiap aksi tidak bileh beririsan Analisis kasus harus mencangkup semua kemungkinan kasus

Struktur If-Then
Algoritma : Dalam pemrograman Pascal : if kondisi then statement 1 else statement 2 endif if kondisi then statement 1 else statement 2; (*endif*) Dalam pemrograman C: if (kondisi) statement 1; else statement 2; /*endif*/

a. Penyeleksian Satu Kasus
IF Notasi algoritmik untuk analisis penyeleksian satu kasus adalah dengan

menggunakan struktur IF-THEN:

CONDIS I

Benar
Page 1

AKSI

If kondisi then Aksi endif Salah then

Kondisi akan diseleksi oleh statemen if. Bila kondisi bernilai benar (true), maka aksi sesudah kata then (dapat berupa satu atau lebih aksi) akan diproses. Bila kondisi bernilai salah (false), maka tidak ada aksi apapun yang akan dikerjakan. Statemen endif adalah untuk mempertegas bagian awal dan bagian akhir struktur IF THEN. Contoh: Algoritma menentukan apakah sebuah bilangan bulat merupakan bilangan genap.

Algoritma BILANGAN_GENAP { Menentukan apakah sebuah bilangan bulat yang dibaca dari piranti masukan merupakan bilangan genap } DEKLARASI bil : integer salah DESKRIPSI : read(bil) if bil mod 2 = 0 then write(‘bilangan genap’) Endif

bil mod 2 = 0

benar

then

‘bilangan genap’

END

Contoh bahasa pemrograman dalam bahasa pascal:
Page 2

Maka apabila di Run akan menghasilkan output sbagai berikur:

2. Struktur If-Then..Else

b. Penyeleksian Dua Kasus • Notasi algoritmik untuk analisis penyeleksian dua kasus adalah dengan menggunakan struktur IFTHEN-ELSE:
IF IF Kondisi Then Aksi 1 Else aksi 2 endif Aksi 2 salah Aksi 1 Kondisi ?

Benar

then

else

Page 3

B) endif A > B salah then Nilai terbesar A else Nilai terbesar B END program MAKSIMUM. benar Algoritma MAKSIMUM { Menentukan bilangan terbesar dari dua bilangan bulat } DEKLARASI A.readln(B). Contoh: Algoritma menentukan bilangan maksimum (terbesar) dari dua buah bilangan bulat. if A > B then writeln(‘Bilangan terbesar : ’.readln(A). { Menentukan bilangan terbesar dari dua bilangan bulat } (* DEKLARASI *) var A.A) else writeln(‘Bilangan terbesar : ’. (*endif*) end.Dalam struktur IF-THEN-ELSE. Statemen else menyatakan ingkaran (negation) dari kondisi. (* DESKRIPSI *) begin write(‘Masukkan bilangan A : ‘). B : integer DESKRIPSI : read(A.A) else { B ≥ A } write(‘Bilangan terbesar : ’. write(‘Masukkan bilangan B : ‘).B).B) if A > B then write(‘Bilangan terbesar : ’. aksi1 akan dilaksanakanjika kondisi bernilai benar (true). dan jika kondisi bernilai salah (false) maka aksi2 yang akan dilaksanakan. Page 4 . B : integer.

Contoh bahasa pemrograman dalam pascal: Apabila di Run akan muncul tampilan output sebagai berikut: c. Penyeleksian Tiga Kasus atau Lebih (tersarang) Notasi algoritmik untuk analisis penyeleksian tiga kasus atau lebih (tersarang) adalah tetap dengan menggunakan struktur IF-THEN-ELSE sebagaimana halnya pada masalah dengan dua kasus If kasus: • Tiga kondisi then Aksi 1 Else If kondisi then Aksi 2 Else If kondisi then Aksi 3 Endif endif Aksi 3 If kondi si 1 Aksi 1 If kondi si 2 Aksi 2 Page 5 .

{ Menentukan bilangan terbesar dari dua bilangan bulat } (* DEKLARASI *) var A.readln(A). B : integer.B). (*endif*) end.A) else writeln(‘Bilangan terbesar : ’. if A > B then writeln(‘Bilangan terbesar : ’. (* DESKRIPSI *) begin write(‘Masukkan bilangan A :‘).program MAKSIMUM. write(‘Masukkan bilangan B :‘).readln(B). Contoh bahasa pemrograman dalam pascal: Apabila di Run maka akan muncul tampilan output sebagai berikut:\ Page 6 .

’D’. ’C’.d. ’B’. Empat kasus: If kondisi then Aksi 1 else If kondisi then Aksi 2 Else If kondisi then Aksi 3 Else If kondisi then Aksi 4 else endif endif endif Kondis i1 Kondi si2 Aksi 1 Aksi 2 Kondi si3 Aksi 3 Aksi 4 Contoh: Algoritma menentukan indeks nilai ujian mahasiswa: Algoritma INDEKS_NILAI_UJIAN { Menentukan indeks nilai mahasiswa berdasarkan nilai ujiannya } DEKLARASI nilai : real { nilai ujian dalam numerik } indeks : char { ’A’. ’E’ } DESKRIPSI : read(nilai) if nilai _ 80 then indeks ← ‘A’ else if (nilai _ 70) and (nilai < 80) then indeks ← ‘B’ else if (nilai _ 55) and (nilai < 70) then indeks ← ‘C’ else if (nilai _ 40) and (nilai < 55) then indeks ← ‘D’ else { nilai < 40 } indeks ← ‘E’ endif endif endif endif write(indeks) Page 7 .

(*endif*) (*endif*) (*endif*) (*endif*) writeln(‘Indeks nilai ujian = ‘.readln(nilai).indeks). (* DESKRIPSI *) begin write(‘Masukkan nilai ujian : ‘).program INDEKS_NILAI_UJIAN. { Menentukan indeks nilai mahasiswa berdasarkan nilai ujiannya } (* DEKLARASI *) var nilai : real. end. Contoh pascal : Page 8 . if nilai >= 80 then indeks := ‘A’ else if (nilai >= 70) and (nilai < 80) then indeks := ‘B’ else if (nilai >= 55) and (nilai < 70) then indeks := ‘C’ else if (nilai _ 40) and (nilai < 55) then indeks := ‘D’ else { nilai < 40 } indeks := ‘E’. { nilai ujian dalam numerik } indeks : char.

Fungsi penyeleksian kondisi penting artinya dalam penyusunan bahasa C. scanf(“%f”.STRUKTUR KONDISI “IF…. Bentuk umum struktur kondisi if adalah : if(kondisi) pernyataan. printf(“Masukan nilai yang didapat : “).h” #include “conio. Bila proses yang diseleksi terpenuhi atau bernilai benar. 1. } Page 9 .” Struktur if dibentuk dari pernyataan if dan sering digunakan untuk menyeleksi suatu kondisi tunggal. &nilai). Penyeleksian kondisi dapat diibaratkan sebagai katup atau kran yang mengatur jalannya air. maka pernyataan yang ada di dalam blok if akan diproses dan dikerjakan. Contoh Program 1 : /* Program struktur kondisi if untuk memeriksa suatu kondisi */ #include “stdio. getch(). if(nilai > 65) printf(“\n ANDA LULUS !!!!\n”).h” void main() { float nilai. Bila katup terbuka maka air akan mengalir dan sebaliknya bila katup tertutup air tidak akan mengalir atau akan mengalir melalui tempat lain.Apabila di output akan muncul tampilan sebagai berikut: Penyeleksian Kondisi pada c Penyeleksian kondisi digunakan untuk mengarahkan perjalanan suatu proses. terutama untuk program yang kompleks.

Bentuk umumnya adalah sebagai berikut : Page 10 . Jika kondisi yang diperiksa bernilai benar atau terpenuhi maka pernyataan pertama yang dilaksanakan dan jika kondisi yang diperiksa bernilai salah maka pernyataan yang kedua yang dilaksanakan.max.b.scanf("%i". namun sebaliknya bila kita memasukan sebuah nilai yang kurang dari 65 maka program akan berhenti dan tidak dihasilkan apa-apa.max).” Dalam struktur kondisi if. printf("Entry bil 1 : ").&a).scanf("%i".fflush(stdin).fflush(stdin).fflush(stdin).. if(max<0) printf("Bil tsb adalah bil negatif"). if(max>0) printf("Bil tsb adalah bil positif\n").else minimal terdapat dua pernyataan.. int a..h" void main() { clrscr().&b)..Bila program tersebut dijalankan dan kita memasukan nilai 80.. printf("Entry bil 2 : ").c. } 2 STRUKTUR KONDISI “IF. if((a>b)&&(a>c)) max=a.. /* Program contoh penerapan struktur kondisi if */ #include"stdio.&c).h" #include"conio. printf("Bil terbesar : %i\n".. maka perintah mencetak perkataan LULUS !!!! akan dilaksanakan.ELSE…. if((c>a)&&(c>b)) max=c. if((b>a)&&(b>c)) max=b..scanf("%i". getch().. printf("Entry bil 3 : ").

Hal ini berbeda dengan struktur if dimana program akan berhenti bila kita memasukan nilai kurang dari 65. /* Masukan akan disimpan dalam variable nilai */ if (nilai > 65) printf(“\n LULUS !!!\n”)... Page 11 .. Selanjutnya proses diteruskan hingga ditemukan pernyataan ‘break’. Struktur ini akan melaksanakan salah satu dari beberapa pernyataan ‘case’ tergantung nilai kondisi yang ada di dalam switch. } Bila program tersebut dijalankan dan kita memasukan nilai 80 maka akan dicetak perkataan “LULUS !!!” namun bila kita memasukan nilai yang kurang dari 65 maka akan tercetak perkataan “TIDAK LULUS !!!”.DEFAULT…” Struktur kondisi switch. Jika tidak ada nilai pada case yang sesuai dengan nilai kondisi. getch()... clrscr().case. scanf(“%f”.... Bentuk umum dari struktur kondisi ini adalah : switch(kondisi) { case 1 : pernyataan-1. else printf(“\n TIDAK LULUS !!!\n”).CASE. printf(“Masukan nilai yang didapat : “).if(kondisi) pernyataan-1 else pernyataan-2 ontoh Program C: #include “stdio..h” void main() { float nilai.default digunakan untuk penyeleksian kondisi dengan kemungkinan yang terjadi cukup banyak.. maka proses akan diteruskan kepada pernyataan yang ada di bawah ‘default’.STRUKTUR KONDISI “SWITCH... &nilai).h” #include “conio. 3 .

renaldi (2007)..break. break.algoritma pemrograman. .Ph.andi yogyakarta..M. case n : pernyataan-n..Math.. Selain itu fungsi if juga bisa di gunakan untuk memecahkan masalah lebih dari satu dengan menggunakan bentuk if bersusun DAFTAR PUSTAKA Suarga...D. Tetapi pengunaan if strukturnya lebih panjang dan rumit di bandingkan dengan struktur case. KESIMPULAN Penggunaan fungsi if di gunakan untuk memecahkan masalah untuk mengambil suatu keputusan di antara banyaknya masalah yang ada. Page 12 .. Garut : STT GARUT. break.. • Pertanyaannya harus jelas. team pengelola (2010) modul praktikum. case 2 : pernyataan-2.. Praktikum. Murnir.Drs. Penjelasaan : Apabila kondisi berniai true atau memenuhi persyaratan maka aksi 1 akan di jalankan tetapi jika kondisi bernilai false maka aksi 2 tidak di jalankan.Sc.. jika syarat 1 salah maka tidak dapat dijalankan.M. Bandung:informatika Bandung. Algoritma dan Pemograman. .. default : pernyataan-m } Translasi ke dalam bahasa C: Persyaratan If : • Kondisi if harus bernilai Boolean ( true and false ) • Jika syarat 1 benar maka aksi dijalankan.

STATEMENT CASE 1. selanjutnya keluar dari struktur CASE.. Persyaratan Selection Case: • • Bentuknya : CASE ekspresi OF case_label1 : statement_1. Nilai dari ekspresi harus berbeda Aksi dari ekspresi harus berupa runtunan Boleh memakai otherwise yang bersifat optional Perbedaan case dengan if adalah susunan case lebih. maka aksi sesudah otherwise (optional) dikerjakan. Struktur CASE dapat digunakan untuk menganalisis penyeleksian dua kasus atau lebih dan bentuknya adalah lebih sederhana daripada struktur IF-THEN-ELSE yang memiliki bentukbertingkat-tingkat. Case nama Kondisi 1 : aksi 1 Kondisi 2 : aksi 2 Kondisi 3 : aksi 3 . END. Kondisi1. …kondisiN dapat bernilai benar atau salah. Kondisi N : aksi N Page 13 . Tiap kondisi diperiksa nilai kebenarannya mulai dari kondisi pertama sampai ditemukan kondisi yang benar. karena ituia berupa runtunan. . kondisi2. case_label2 : statement_2. Aksi yang dipasangkan dengan kondisi ke-k dapat lebih dari satu. maka aksi ke-k dilaksanakan.BAB II STUKTUR CASE 1. Jika kondisi ke-k benar. Jika tidak ada satupun kondisi yang benar.

• Apabila tak satu pun nilai varibel yang cocok maka aksi-ndi kerjakan sebagai aksi “default”(hanya dikerjakan apabila tidak ada yang memenhi syarat). Endcase. Page 14 .aksi-2 di lakukan apabila varibel bernilai nilai-2... aksi-1 dilakukan hanya bila variabel bernilai nilai-1.. Setiap aksi hanya di lakukan apabila suatu nilai varibel di capai sesuai persyaratan. Nilai-2 : aksi-2. .. Nilai-3 : aksi-3.mulai dari aksi-1 hingga aksi-n... Default : aksi-n. Misalnya..Bentuk umum instruksi case : Case(variabel) Nilai-1 : aksi-1. dan seterusnya.... Bentuk case di atas dapat di terjemahkan sbagai berikut : • • Dimungkinkan ada n-buah aksi..

2. case nilai of Page 15 . Struktur CASE menggantikan analisis kasus yang ekivalen dengan struktur IF-THEN- ELSE berikut ini: Contoh program selection CASE : Algoritma teks : Deklarasi N : integer Deskripsi Read (masukan nilai :) Case nilai of 90 … 100 : write(A) 70 … 89 : write(B) translasi ke dalam pascal uses crt. write(‘masukan nilai=’). var nilai : integer. begin clrscr. readln(nilai).

printf(“masukan pilihan:”). printf(“N:”). hitung2= N*N + hitung1. switch(pilihan) Page 16 . scanf(“%d”. 40 … 49 : writeln(‘D’). Pilihan : integer. N) Hitung1 Hitung2 Hitung3 ( N/6 ) * 4/3 N*N + hitung1 sqrt(hitung2) + (N-hitung1) main() { int pilihan. end. hitung3= sqrt (hitung2) +(Nhitung1).50 … 69 : write(C) 40 … 49 : write(D) 0 … 39 : write(E) Endcase 90 … 100 : writeln(‘A’). Read(masukan pilihan. 70 … 89 : writeln(‘B’). Readln.hitung3. &N).hitung3. End.hitung2. Algoritma teks : progam C : Deklarasi #include<stdio. Case pilihan 1 : write(hitung1) 2 : write(hitung2) 3 : write(hitung3) hitung1= (N/6) * 4/3.N. 50 … 69 : writeln(‘C’). scanf(“%f”. 0 … 39 : writeln(‘E’).h> Hitung1.N: real. &pilihan). float hitung1.h> #include<math.hitung2.

Garut : STT GARUT.M.Sc. End { case 1 : printf(“hasilnyaadalah:%f”. case 3 : printf(“hasilnya adalah:%f”.Math.hitung1). DAFTAR PUSTAKA Suarga. Page 17 . sehingga nantinya dapat ditentukan aksi apa yang akan dilakukan bila suatu kasus dimasuki Struktur penyeleksian adalah berupa struktur IF-THEN (atau IF-THEN-ELSE) dan struktur CASE. Break. case 2 : printf(“hasilnya adalah:%f”.Ph. Break. team pengelola (2010) modul praktikum. Murnir.andi yogyakarta. KESIMPULAN Penggunaan case tidak seluas if dan case lebih terbatas penggunaannya.algoritma pemrograman.. Praktikum. renaldi (2007). Suatu permasalahan dapat dianalisa berdasarkan jumlah kasus yang dimilikinya..hitung3).Endcase .Drs. Dan nilai yang di case kan harus bertipe integer atau karakter.M.hitung2). Jika bahasa pemrograman tidak menyediakan struktur CASE. Algoritma dan Pemograman. }} Tidak semua bahasa pemrograman menyediakan struktur CASE (misalnya Bahasa Fortran). Bandung:informatika Bandung.D. maka struktur CASE dapat diganti dengan struktur IF-THEN-ELSE yang ekivalen. Break. Karena dalam case tidak berfungsinya operator perbandingan.. Bahasa Pascal dan C menyediakan struktur ini.

. nilai_awal to nilai_akhir do Page 18 .. 1. yaitu integer atau karakter.tipe riil tidak dapat digunakan sebagai pencacah.end.. Bila terdapat lebih dari satu statement yang ada di dalam looping maka menggunakan begin. nilai awal secara otomatis bertambah satu setiap kali badan pengulangan dimasuki... Keterangan:  Pencacah haruslah dari type data yang memiliki predecessor dan successor. Persyaratan FOR-DO • • • • • Pencacah harus bernilai integer atau karakter. FOR menaik : For pencacah Aksi Endfor. jika hanya satu blok saja tidak perlu menggunakan begin. for-do negatif dan for-do tersarang.  Aksi dapat berupa satu atau lebih instruksi yang si ulang. Ada 3 bentuk looping for-do yaitu for-do positif. sampai akhirnya nilai pencacah sama dengan nilai akhir • Jumlah pengulangan yang terjadi adalah nilai akhir-nilai awal +1 Bentuk umum pernyataan for ada 2 macam yaitu menaik (ascenfing) atau menurun (descending). tetapi real tidak dapat digunakan sebagai pencacah Aksi dapat berupa satu atau lebih intruksi yang diulang Nilai awal harus lebih keil atau sama dengan nilai akhir (for menaik ) Nilai awal harus lebih besar atau sama dengan nilai akhir (for menurun) Penacacah diinisialisasi dengan nilai awal.end. LOOPING FOR-DO Looping for-do digunakan untuk mengulang statement berulang kali sejumlah yang ditentukan..BAB III LOOPING FOR 1.

pencacah diinisialisasi dengan nilai_awal.  Pada awalnya. perhatikan listing code program berikut : Bila dicompile. maka badan pengulangan tidak dimasuki.  Aksi dapat berupa satu atau lebih instruksi yang si ulang. 2. Untuk lebih jelasnya.  Jumlah pengulangan yang terjadi adalah nilai_akhir-nilai_awal +1. yaitu integer atau karakter. maka badan pengulangan tidak dimasuki.sampai akhirnya nilai pencacah sama dengan nilai_awal Jumlah pengulangan yang terjadi adalah nilai_awal-nilai_akhir +1.pencacah diinisialisasi dengan nilai_akhir.sampai akhirnya nilai pencacah sama dengan nilai_akhir. Looping yang lebih dalam akan diproses terlebih dahulu hingga habis kemudian looping yang lebih luar bertambah atau berkurang dan memproses kembali looping yang paling dalam.tipe riil tidak dapat digunakan sebagai pencacah. Nilai pencacah secara otomatis bertambah satu setiap kali badan pengulangan dimasuki.jika nilai_akhir lebih besar dari nilai_awal. Keterangan :  Pencacah haruslah dari type data yang memiliki predecessor dan successor.  Pada awalnya. FOR menurun : For pencacah Aksi Endfor. Nilai_awal harus lebih kecil atau sama dengan nilai_akhir.jika nilai_awal lebih besar dari nilai_akhir. Looping For-Do Tersarang (Nested For) Looping tersarang yaitu looping yang ada di dalam looping lainnya. Bagaimana bisa terjadi demikian?!? Page 19 .  Nilai_akhir harus lebih kecil atau sama dengan nilai_awal. maka outputnya : 11 12 13 21 22 23 Dengan digit/angka yang kiri adalah I dan yang kanan adalah j. Nilai pencacah secara otomatis nilai_akhir downto nilai_awal do bertambah satu setiap kali badan pengulangan dimasuki.

Cara kerja program diatas yaitu cabang looping harus didahulukan operasi loop-nya kemudian baru sub-nya.j. = 12 Untuk j=3 è write(i. = 23 writeln. = 22 Untuk j=3 è write(i. Sekarang analisis kedua listing code berikut : Variabel = niali_awal Variabel<= nilai_akhir true false pernyataan Akhir for Variabel = variabel + 1 Page 20 .j.j.j.’ ‘). = 13 writeln.’ ‘).Looping disamping bisa digambarkan seperti berikut : Untuk i=1 è Untuk j=1 è write(i. = 21 Untuk j=2 è write(i.’ ‘).’ ‘). = 11 Untuk j=2 è write(i. Untuk i=2 è Untuk j=1 è write(i. Looping tersebut berakhir sampai sub dan cabang bernilai akhir.j.’ ‘).j.’ ‘).

float c.yaitu integer atau karakter. Contoh Soal . f. f=32. C #include <stdio. c). f=f+10.5f %0. • • Aksi dapat berupa satu atau lebih instruksi yang di ulang. f.h> main() { int i. } } Page 21 . i++) { c=(f-32)*5/9. jumlah pengulangan yang terjadi adalah nilai_akhir – nilai_awal + 1 . for (i=1.Keterangan: • Pencacah haruslah dari tipe data yang memiliki predecesser dan succerror.tipe riil tidak dapat digunakan sebagai pencacah. i<=5.5f \n". printf("%0.

f : real. Page 22 . uses crt. for i := 1 to 5 do begin c := 5/9 * (f . c:10:2). writeln (f:2:2 . end.32). begin clrscr. f := 32. c.PASCAL program konversi. var i : integer. readln. f := f+10. end.

Printscreen pascal Page 23 .

Praktikum. Garut : STT GARUT.Drs.M. Murnir. renaldi (2007).algoritma pemrograman.andi yogyakarta. team pengelola (2010) modul praktikum.Ph.Math.Sc.D. Bandung:informatika Bandung..M.. Algoritma dan Pemograman. Page 24 ..DAFTAR PUSTAKA Suarga.

BAB IV WHILE 1. persyaratan Looping While: • • • Kondisi harus bernilai false agar prulangan berhenti Didalam badan perulangan harus ada intruksi untuk mengubah nilai kondisi Peubah harus terdefinisi nilainya sebelum pengulangan dilaksanakanpertama kali While digunakan pada kasus yang mengharuskan terlebih dahulu pemeriksaan kondisi objek. Statement while-do digunakan untuk melakukan proses looping suatu statemen terus-menerus selama ekspresi_logika/relasi bernilai benar atau belum terpenuhi. sebelum objek tersebut dimanupulasi • Looping dengan while-do mempunyai bentuk seperi berikut : while ekspresi_logika/relasi do statement. PERULANGAN WHILE-DO . Page 25 .

Maka dari itu di dalam statement ada i:=i+1. end.fah:real. write(‘Menghitung lagi (y/t) ? ‘). Page 26 . while lagi=’y’ do clrscr. begin lagi:=’y’. end. lagi:char. var cel. uses wincrt. Kemudian ada penyeleksian input jika memenuhi akan diulangi jika tidak akan berhenti. Lihat code berikut yang mebaca input dan mengoperasi-kannya. yang akan menambahkan nilai i satu persatu supaya i > 5. Jadi jika i masih lebih kecil dari 5 maka statement akan terus diproses berulang. {prosedur untuk menghapus layar} write(‘Nilai celcius ? ‘). readln(lagi). writeln(‘Fahrenheit = ‘.8 * cel + 32. program cel_to_fah. readln(cel).fah:5:2). dan proses akan berhenti setelah i tidak lagi lebih besar dari 5 (i > 5). fah:=1.Ekspresi relasi-nya yaitu i < 5.

kita tidak perlu menuliskan perintah sampai 100 atau 1000 kali. bila kita ingin menginput dan mencetak bilangan dari 1 sampai 100 bahkan 1000. /* awal variabel */ while (x <= 5) /* Batas akhir perulangan */ { printf(“%d BAHASA C\n”. Contoh Program 1 : /* Program Perulangan menggunakan while */ #include “stdio.h” void main() { int x. 1 STRUKTUR PERULANGAN “ WHILE” Perulangan WHILE banyak digunakan pada program yang terstruktur. } Jika program tersebut dijalankan maka akan menghasilkan hasil sebagai berikut 1BAHASA C 2BAHASA C 3BAHASA C Page 27 . cukup dengan beberapa perintah saja. Pemrograman Bahasa C dengan Turbo C Perullangan pada c Dalam bahasa C tersedia suatu fasilitas yang digunakan untuk melakukan proses yang berulangulang sebanyak keinginan kita. x). Dan pada prinsipnya adalah sama dengan nested for-do.h” #include “conio. Struktur perulangan dalam bahasa C mempunyai bentuk yang bermacam-macam. Misalnya saja. Namun dengan struktur perulangan proses. x = 1. /* variabel x ditambah dengan 1 */ } getch(). x ++. Perulangan ini banyak digunakan bila jumlah perulangannya belum diketahui. Proses perulangan akan terus berlanjut selama kondisinya bernilai benar (true) dan akan berhenti bila kondisinya bernilai salah. tentunya kita akan merasa kesulitan.Di dalam looping while-do juga terdapat while-do tersarang (nested while-do).

.4BAHASA C 5BAHASA C Pada perulangan while di atas. Setiap kali melakukan perulangan. seleksi while berada di bawah batas perulangan.. Jadi dengan menggunakan struktur do…while sekurang-kurangnya akan terjadi satu kali perulangan..while sama saja dengan struktur while.. i=i+1. while(i<=3) { x=1. x=x+1... Contoh Program 2 : /* Program mencetak deret bilangan dengan menggunakan while */ #include"stdio. } 2 STRUKTUR PERULANGAN “DO. hanya saja pada proses perulangan dengan while.x).. int i=1.x.h" void main() { clrscr().h" #include"conio. seleksi berada di while yang letaknya di atas sementara pada perulangan do.. while(x<=i) { printf("%3i". Page 28 ..while. proses atau perintah mencetak kata-kata “BAHASA C” akan terus dilakukan selama variabel x masih kurang atau sama dengan 10. nilai dari variabel x akan bertambah 1. } getch().WHILE…” Pada dasarnya struktur perulangan do.. } printf("\n").

r). x).h” #include “conio. } Page 29 . } while(x <= 10).Com Copyright © 2003 IlmuKomputer. } Contoh Program 1 : /* Program perulangan menggunakan for */ #include “stdio. } 3 STRUKTUR PERULANGAN “FOR” Struktur perulangan for biasa digunakan untuk mengulang suatu proses yang telah diketahui jumlah perulangannya. x++) { printf(“%d BAHASA C\n”. x).Contoh Program : #include “stdio. x<= 10. Kuliah Berseri IlmuKomputer.h” void main() { int x.2f".Com do { printf(“%d BAHASA C\n”. getch(). } getch(). x = 1. getch(). Dari segi penulisannya. printf("\n Rata rata : %. for(x = 1. Bentuk umum perulangan for adalah sebagai r=t/i.h” void main() { int x.h” #include “conio. struktur perulangan for tampaknya lebih efisien karena susunannya lebih simpel dan sederhana. x ++.

} printf("\n Total : %.t=0.i<=2. printf("\n Rata rata : %.i.y). getch().t). y=y+1. } Flowchart while kondisi false true pernyataan Page 30 .x.r). r=t/i.scanf("%f". float r.int y.Contoh Program 2 : /* Mencari total dan rata-rata sejumlah bilangan menggunakan for */ #include"stdio.2f".i++) { printf("Entry bilangan %i : ".2f".y<=3.h" #include"conio. for(y=1.&x).h" void main() { clrscr().y++) for(i=0. t=t+x.

jumlah : integer. while(i<=5) { jumlah=jumlah+2. i :=1.Dari diagram di atas terlihat bahwa ada kemungkinan pernyataan tidak dieksekusi sama sekali . Contoh Program C #include <stdio. i++.n.h> main() { int i. jumlah. i=1. jumlah := 0.i.keadaan ini terjadi kalau kondsi awal bernilai false. printf("jumlah deret ke %d : %d\n".jumlah). } } PASCAL var i. jumlah=0. begin n := 2. while i <= 5 do Page 31 .

end. Printscreen C Page 32 . ': ' . end. i := i+1. writeln('jumlah deret ke '. n := n+2. readln. jumlah).begin jumlah := jumlah + 2. i.

PASCAL Page 33 .

M. Agar kondisi suatu saat bernilai false.algoritma pemrograman. maka di dalam badan pengulangan harus ada instruksi yang mengubah nilai kondisi.. Praktikum. Murnir. Pengulangan berhenti apabila kondisi bernilai falsei. Kondisi di akhir pengulangan (setelah endwhile) disebut loop invariant.andi yogyakarta. Bandung:informatika Bandung. Page 34 . DAFTAR PUSTAKA Suarga. badan pengulangan tidak akan dimasuki.Drs. yaitu variabel kondisi yang nilainya sudah tidak berguna lagi.Math. Yang harus diperhatikan adalah pengulangan harus berhenti. Pengulangan yang tidak pernah berhenti menandakan bahwa logika algoritma tersebut salah. renaldi (2007). Garut : STT GARUT.KESIMPULAN Aksi akan dilaksanakan berulangkali selama kondisi bernilai true. Jika kondisi bernilai false.. Algoritma dan Pemograman.D.Sc. yang berarti pengulangan selesai..Ph.M. team pengelola (2010) modul praktikum.

BAB V REPEAT 1. until adalah proses looping suatu statement secara terus menerus hingga ekspresi yang ada di dalam until bernilai false atau sudah terpenuhi.. Pernyataan_n : UNTIL kondisi Penjelasan: notasi ini menjelaskan pengulangan lpada kondisi boolean.proses Page 35 .. kemudian memeriksa objek tersebut B.. PERULANGAN REPEAT..aksi di dalam badan kalang di ulang-ulang sammpai kondisi bernilai true. Persyaratan Looping Repeat: • • • • Pada perulangan kondisi harus bernilai Boolean Didalam badan perulangan harus ada intruksi untuk mengubah nilai kondisi Peubah harus terdefinisi nilainya sebelumpengulangan dilaksanakan pertama kali Repeat di ginakan pada kasus yang terlebih dahulu memanipulasi objek baru. Bentuknya: Bentuk pernyataan REPEAT: REPEAT Pernyataan_1 : Pernyataan_2 : .definisi Repeat.Until Repeat.. jika kondisi masih false . Dengan kata lain looping repeat. dengan kata lain ..until prosesnya berkebalikan dengan looping while-do.UNTIL A.

until i=5. Maka di dalam badan pengulangan harus ada pernyataan yang mengubah nilai peubah kondisi. repeat i:=i+1. Repeat statement.karena proses pengulangan suatu saat harus berhenti.perbedaaan yang lain terhadap WHILE . until ekspresi_logika/relasi. writeln(i). Perhatikan contoh berikut : program repeat_until. uses wincrt. dan dalam beberapa masalah kedua pernyataan tersebut komplemen satu sama lain. begin i:=0. Jadi erupakan kebalikan dari WHILE . pernyataan false kondisi true true end Tampak bahwa pengulangan justru dilakukan selama kondisi bernilai salah (false). Page 36 . Pernyataan REPEAT memiliki makna yang sama sengan WHILE . end.pemeriksaan terhadap kondisi pada REPEAT dilakukan belakangan . var i:byte.setelah bagian pernyataan yang terletak antara REPEAT dan UNT IL.pengulangan masih terus dilakukan .

repeat writeln(i). begin i:= 10. until i>5. Pada contoh. Sekarang pada program repeat_until. penambahan i terus dilakukan hingga i=5. Page 37 . end. var i:integer. coba anda ganti ekspresi di dalam until menjadi i>5. uses wincrt. uses wincrt. var i:integer. end. end. while i<5 do begin writeln(i). while program sample_while.until dengan looping while-do ini! repeat program sample_repeat. i:=i+1. Kemudian anda compile dan apa yang terjadi ??! Coba bandingkan contoh looping menggunakan repeat.Output yang dihasilkan adalah : 12345 Proses looping akan terus dilakukan hingga ekspresi terpenuhi.. i:=i + 1. begin i:= 10.

Sedangkan looping while statement-nya palingsedikit dikerjakan nol kali.until juga terdapat looping tersarang (nested repeat).) pada statement yang lebih dari satu. Page 38 . karena pemenuhan syarat until terletak setelah statement.end. Sama seperti nested for dan nested while dalam hal aturan. Ø Looping repeat tidak memerlukan blok statement (begin. Didalam looping repeat.Output : 11 Output : Tidak ada hasil Dari kedua contoh diatas dapat disimpulkan perbedaan kedua operasi tersebut : Ø Paling sediki statement di dalam looping repeat diproses sekali. Sedangkan while memerlukan blok statement (begin.) jika statementnya lebih dari satu..end.until. karena pemenuhan syarat while terletak sebelum statement... Perhatikan code program berikut yang menggunakan nested repeat.. Program ini akan menghitung sisi-sisi segitiga siku-siku dengan menggunakan rumus phytagoras yaitu C = A2 + B2. yaitu di dalam looping terdapat looping yang lain. karena batasnya sudah ditunjukkan oleh repeat.

Sc. Praktikum.Ph.KESIMPULAN Aksi di dalam badan kalang diulang-ulang sampai kondisi bernilai true. Algoritma dan Pemograman. DAFTAR PUSTAKA Suarga. team pengelola (2010) modul praktikum. Karena proses pengulangan suatu saat harus berhenti.Drs.M. Dengan kata lain. dan dalam beberapa masalah kedua pernyataan tersebut komplemen satu sama lain. maka di dalam badan pengulangan harus ada pernyataan yang mengubah nilai peubah kondisi.. Garut : STT GARUT.algoritma pemrograman. Murnir. jika kondisi masih false. renaldi (2007). Pernyataan repeat memiliki makna yang sama dengan while. Page 39 .D..Math.andi yogyakarta. Bandung:informatika Bandung. proses pengulangan masih terus dilakukan..M.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->