Transcript

LAPORAN

STRUKTUR DATA

STRUKTUR KONTROL

Disusun oleh :

Nama : Syarif Hidayatullah

Kelas : IK-1A/21

NIM : 3.34.12.0.21

Job : 3

PRODI TEKNIK INFORMATIKA

JURUSAN TEKNIK ELEKTRO

POLITEKNIK NEGERI SEMARANG

2012/2013

Struktur Data 3 Page 2

KATA PENGANTAR

Puji syukur penulis panjatkan ke hadirat Allah SWT yang telah memberikan Rahmat

dan Hidayah-Nya sehingga penulis dapat menyelesaikan penyusunan laporan Struktur Data

pada Job 3 “SRUKTUR KONTROL”

Laporan ini menyampaikan tentang jenis jenis struktur control , statement seleksi,

statement iterasi , sataement jump , sekaligus bisa mengimplementasikanya

Terwujudnya laporan ini tidak terlepas dari bantuan berbagai pihak dan sumber –

sumber yang tidak dapat penulis sebutkan satu per satu.

Penulis berharap laporan ini dapat bermanfaat bagi semua pihak baik itu pelajar

maupun pihak yang sedang ingin belajr mengenai Bahasa Java

Semarang, 7 Maret 2013

Penulis

Struktur Data 3 Page 3

DAFTAR ISI

HALAMAN JUDUL …………………………………………………………………...…

KATA PENGANTAR…………………………………………………………………….

DAFTAR ISI …………………………………………………………………..…………

I. Tujuan Instruksional Khusus……………………………………………………….….

II. Persyaratan / Kebutuhan Sistem Komputer ……………………………………...……

III. Dasar Teori………………………………………………………………………….…

IV. Langkah Kerja ………………………………………………………………………..

V. Latihan ………………………………………………………………………………..

VI. Penutup…………………………………………………………………….………….

1

2

3

4

4

4

8

23

27

Struktur Data 3 Page 4

BAB 3

I. Tujuan Instruksi Khusus

Setelah menyelasaikan materi ini mahasiswa dapat :

1. Mahasiswa mampu menyebutkan dan menjelaskan jenis – jenis struktur kotrol .

2. Mahasiswa mampu menyebutkan jenis – jenis statement seleksi dan menerapkannya

kedalam program.

3. mahasiswa mampu menyebutkan jenis – jenis statement iterasi dan menerapkannya

kedalam program.

4. Mahasiswa mampu menyebutkan jenis – jenis statement jump dan menerapkan

kedalam program.

II. Persyaratan / Kebutuhan Sistem Komputer

Persyaratan / kebutuhan system untuk menjalankan program Java adalah sebagai berikut :

1. Processor P-II atau lebih tinggi ,

2. Ran minimal 32 Mybte,

3. Free space hardisk minimal 200 Mybte,

4. Mouse ( Serial / PS2) ,

5. Sistem Operasi :

a. Minimal Windows 98 ( disarankan versi Windows yang lebih tinggi ) ,

b. Linux

III. Dasar Teori

3.1 Jenis Struktur Kontrol ( Control Structure )

Sebuah bahasa pemograman dimana menggunkan struktur atau statement control (

Control Structure ) untuk mengontrol jalannya aliran eksekusi . Statement control

pemograman java dapat dikatagorikan menjadi :

I. Selection

II. Iteration

III. Jump

3.2 Statement Seleksi ( Selection Statement )

Seleksi memungkinkan kita untuk memilih eksekusi terhadap satu atau beberapa

bagian dari sutau program dari pada bagian lain .Java mendukung dua statement seleksi yaitu

: if dan switch.

3.2.1 Statement IF

Struktur Data 3 Page 5

Statemen IF adalah sebuah statemen percabangan kondisional yang digunakan untuk

mengatur aliran eksekusi program , yang terdiri dari satu atau dua percabangan .

Bentuk umum dari statement if adalah sebagia berikut

if (kondisi)

statement1;

else

statemen2;

Bentuk umum dari statemen if menggunakan lebih dari satu statemen (majemuk) adalah

sebagai berikut :

If (kondisi)

{

statemen;

statemen;

statemen;

}

else

{

statemen;

statemen;

statemen;

}

Nested-If

Perintah nested-if ini sering disebut sebagai perintah if dalam if . Bentuk umum dari

nested-if adlah sebagai berikut .

if ( kondisi)

if (kondisi)

statemen1;

else

statemen2;

else

statemen3;

Perintah IF Bertingkat

Struktur Data 3 Page 6

Statement if bertingkat adalah sebuah statemen percabangan kondisional yang

digunakan untuk mengatur aliran eksekusi program , yang terdiri dari banyak

percabangan . Bentuk umum dari statemen if bertingkat adalah sebagai berikut :

if (kondisional)

statemen1;

else

if (kondisi2)

statemen2;

else

if (kondisi3)

statemen3;

else

statemen4;

3.2.2 Statemen Switch

Statemen switch adalah sebuah statemen percabangan kondisional yang digunakan

untuk mengatur aliran eksekusi program , yang terdiri dari banyak percabangan .

Bentuk umum dari statemen switch adalah sebagai berikut :

switch (ekspresi)

{

case value1:

//statemen

break;

case value2:

//statemen

break;

case valueN;

//satemen

break;

default;

//default statement

}

3.3 Statemen Iterasi ( Iteration Statements)

Bentuk Statemen iterasi pada Java adalah for,while, dan do-while. Statemen ini sering

disebut sebagai loop.

3.3.1 Statemen while

Statemen while merupakan salah satu statemen yang digunakan untuk memproses

suatu statemen atau beberapa satatemen beberapa kali. Bentuk statemen while ini

adalah sebagai berikut.

Struktur Data 3 Page 7

while (LoopCondition)

Statemen;//statemen ini bisa lebih dari Satu

3.3.2 Statemen do-while

Statemen do-while dogunakan untuk mengulang proses. Bentuk statemen do-while ini

adalah sebagai berikut

do

Statemen

while (loopCondition);

3.3.3 Statemen For

Statemen for digunakan untuk mengulang pengeksekusian terhadap satu atau

sejumlah pernyataan . Bentuk statemen for adalah sebagai berikut.

for (InitializationExpression;LoopCondition;StepExpression)

Statemen

Nested Loops

Statemen loop juga mempunyai bentuk loop dalam loop (nested loop) atau dengan kata

lain Java mengijinkan suatu loop berada dalam loop yang lain.

3.4 Statemen JUMP

Java mendukung terhadap tiga jenis statemen jump : break, continue , dan return.

3.4.1 Statemen break

Dalam Java, statemen break mempunyai tiga kegunaan , yaitu :

1. Membatasi (terminates) sebuah urutan statemen dalam statemen switch.

2. Dapat digunakan untuk keluar dari sebuah loop.

3. Dapat digunakan sebagai sebuah pengganti bentuk dari goto.

Menggunakan break Sebagai bentuk Goto

Pada bahasa java , tidak mempunyai statemen goto seperti pada bahasa lain, tetapi

sebagai penggantinya menggunakan statemen break. Break digunakan ketika kita

ingin keluar dari satu atau lebih blok kode . Blok ini bukan menjadi bagian dari sebuah

Struktur Data 3 Page 8

loop atau switch, dan break bekerja dengan sebuah label . Bentuk umum dari break ini

adalah :

break label;

label adalah sebuah nama dari label yang menunjukkan sebuah blok kode . Penggunaan

yang paling umum dari statemen break berlabel adalah untuk keluar dari nested loops.

3.4.2 Statemen Continue

Statemen continue merupakan kebalikan dari statemen break . Statemen continue

digunakan untuk mengarahkan eksekusi ke iterasi berikutnya pada statemen

pengulangan .

3.4.3 Statemen return

Statemen control return digunakan / biasanya secara eksplisit me-return

(mengembalikan sebuah nilai) dari sebuah metode.

IV. Langkah Kerja

1. Jalankan Edit Plus , buat file baru java dan ketikkan kode programberikut: Untuk

contoh, perhatikan contoh berikut ini:

class IfDemo

{

public static void main (String args[])

{

int a=1,b=2,c;

if(a>b)

c=1;//statemen1

else

c=2;//statemen2

System.out.println("Nilai C="+c);

}

}

2. Simpan program Java diatas.

3. Eksekusi program Java Pertama dengan mengeklik Buil Compile File . Lalu

Buil Excute File

Struktur Data 3 Page 9

4. Ketikkan kode program Java berikut ini :

Berikut ini contoh program menggunakan statemen majaemuk :

class IfDemoMultistatemen { public static void main(String args[]) { int a=1,b=2,c,d; if(a<b) { c=1; d=a+b; System.out.println("Nilai C="+c); System.out.println("Nilai a+b="+d); } else { c=2; d=a-b; System.out.println("Nilai C="+c); System.out.println("Nilai a+b="+d); } }

}

Struktur Data 3 Page 10

Berikut contoh program menggunakan nested-if

class NestedIfDemo

{

public static void main(String args[])

{

int a=1,b=2,c=3,d;

if(a<b)

if(b<c)

d=c+b+a;

else

d=c-b-a;

else

d=c+b+a;

System.out.println("Nilai D="+d);

}

}

Struktur Data 3 Page 11

Berikut ini adalah contoh program yang menggunakan perintah if bertingkat

class IfBertingkatDemo

{

public static void main(String args[])

{

int a=1,b=2,c=3,d=4,x;

if(b<a)

x=a-b;

else

if(c<b)

x=b-c;

else

if(d<c)

x=c-d;

else

x=d;

System.out.println("Nilai X="+x);

}

}

Struktur Data 3 Page 12

Berikut ini diberikan sebuah contoh program menggunakan if-else untuk aplikasi

menu pilihan

class MenuJurusanElseIf

{

public static void main(String args[])

throws java.io.IOException

{

char pilihan;

do

{

System.out.println("PROGRAM MENGGUNAKAN IF-

ELSE");

System.out.println("JURUSAN ELEKTRO POLINE:");

System.out.println("1.Prodi INFORMATIKA");

System.out.println("2.Prodi LISTRIK");

System.out.println("3.Prodi ELEKTRONIKA");

System.out.println("4.Prodi TELEKOMUNIKASI");

System.out.println("PILIH SALAH SATU:");

pilihan=(char)System.in.read();

}

while(pilihan <'1'||pilihan >'4');

System.out.println("\n");

if(pilihan=='1'){System.out.println("FOKUS ILMU

KOMPUTER");}

else if(pilihan=='2'){System.out.println("FOKUS

LISTRIK");}

else if(pilihan=='3'){System.out.println("FOKUS

Struktur Data 3 Page 13

ELEKTRONIKA");}

else if(pilihan=='4'){System.out.println("FOKUS

TELEKOMUNIKASI");}

}

}

Berikut ini diberikan sebuah contoh program menggunakan switch hasil dari modifikasi dari

contoh program MenujurusanIfElse

class MenuJurusanElseIf

{

public static void main(String args[])

throws java.io.IOException

{

char pilihan;

Struktur Data 3 Page 14

do

{

System.out.println("PROGRAM MENGGUNAKAN IF-

ELSE");

System.out.println("JURUSAN ELEKTRO POLINE:");

System.out.println("1.Prodi INFORMATIKA");

System.out.println("2.Prodi LISTRIK");

System.out.println("3.Prodi ELEKTRONIKA");

System.out.println("4.Prodi TELEKOMUNIKASI");

System.out.println("PILIH SALAH SATU:");

pilihan=(char)System.in.read();

}

while(pilihan <'1'||pilihan >'4');

System.out.println("\n");switch(pilihan)

{

case '1':System.out.println("FOKUS ILMU KOMPUTER");break;

case '2':System.out.println("FOKUS LISTRIK");break;

case '3':System.out.println("FOKUS ELEKTRONIKA");break;

case'4':System.out.println("FOKUS TELEKOMUNIKASI");break;

}}}

Struktur Data 3 Page 15

Sebagai contoh program dibawah ini untuk menampilkan tulisan ‘java’ sebanyak 10 kali

class Whiledemo

{

public static void main(String args[])

{

int n=0;

while(n<10)

{

System.out.println("Hello Java"+n);

n++;

}

}

}

Struktur Data 3 Page 16

Contoh program do-while hasil modifikasi dari program menggunakan while di atas.

class DoWhileDemo

{

public static void main(String args[])

{

int n=0;

do

{

System.out.println(n);

System.out.println("Hello Java");

n++;

}

while(n<10);

}

}

Struktur Data 3 Page 17

Berikut ini diberikan sebuah contoh program menggunakan for hasil dari modifikasi program

menggunakan while.

class ForDemo

{

public static void main(String args[])

{

//int n=0

//while(n<10)

for(int n=0;n<10;n++)

{

System.out.println("Hello java"+n);

//n++;

}

}

}

Berikut ini diberikan sebuah contoh program loop dalam loop:

class NastedDemo

{

public static void main(String args[])

{

int i,j;

for(i=0;i<10;i++)

{

for(j=i;j<10;j++)

System.out.print("x");

System.out.println();

}

}

}

Struktur Data 3 Page 18

Berikut ini diberikan sebuah contoh program menggunakan break untuk keluar dari loop.

class BreakLoopDemo

{

public static void main(String args [])

{

for(int i=0;i<10;i++)

{

if(i==5)break;//keluar dari loop jika i=5

System.out.println("i:"+i);

}

System.out.println("loop selesai");

}

}

Berikut ini diberikan sebuah contoh program menggunakan break dalam loop dalam loop.

class BreakNestedLoopDemo

{

public static void main(String args[])

{

for(int i=0;i<10;i++)

{

System.out.print("loop ke"+i+":");

if(i==5)break;//berhenti loop jika j=5

for(int j=0;j<10;j++)

Struktur Data 3 Page 19

{

if(j==8)break;//berhenti loop jika j=8

System.out.print(j);

}

System.out.println();

}

System.out.println("Loops complete.");

}

}

Berikut ini diberikan sebuah contoh program menggunakan statemen break.

class BreakDemo

{

public static void main(String args[])

{

boolean t=true;

blok1:

{

blok2:

{

blok3:

{

System.out.println("sebelum break.");

if(t)break blok1;//break keluar dari blok1

System.out.println("sesudah break tidak dieksekusi");

}System.out.println("Diluar Blok ketiga");

}System.out.println("Diluar blok kedua");

}System.out.println("Diluar blok pertama");

}

}

Struktur Data 3 Page 20

Untuk contoh ,program berikut menunjukkan penggunaan break untuk keluar dari nested

loop:

//Menggunakan break untuk keluar dari nestedloops

class BreakToExit

{

public static void main(String args[])

{

outer:for(int i=0;i<3;i++)

{

System.out.print("Loop ke "+i+":");

for(int j=0;j<10;j++)

{

if(j==5)break outer;//keluar dari loop

System.out.print(j+"");

}System.out.println("Tidak dieksekusi");

}System.out.println();

System.out.println("Loop selesai");

}

}

Struktur Data 3 Page 21

Berikut ini diberikan beberapa contoh pemakaian continue dalam program Java.

//statemen continue for loop.

class ContinueDemo

{

public static void main(String args[])

{

for(int i=0;i<10;i++)

{

System.out.println(i);

if(i<=6)continue;

else

break;

}

}

}

Struktur Data 3 Page 22

Statemen control return digunakan/biasanya secara eksplisit me-return (mengembalikan

sebuah nilai) dari sebuah metode.

class ReturnAsJump

{

public static void main(String args[])

{

int a=2;

int b=6;

int c;

c=b/a;

System.out.println("sebelum retrun c="+c);

if(b>a)

return;//return ke pemanggil

else

c=b-a;

System.out.println("Tidak akan di eksekusi c="+c);

}

}

Struktur Data 3 Page 23

V. Latihan

1. Sebutkan jenis – jenis struktur control dan jelaskan penggunaanya

2. Sebutkan jenis – jenis statemen seleksi

3. Sebutkan jenis – jenis statemen iterasi

4. Sebutkan jens – jenis iterasi jump

5. Sebutkan struktur control yang akan dieksekusi minimal satu kali

6. Buat for loop yang akan menghasilkan output dari kelipatan 3 sampai 36 : 3 6

9 12 15 18 21 24 27 30 33 36.

7. Buat program menggunakan struktur control untuk menghasilkan output

sebagai berikut.

Hello,Java

Bye

Bye

Bye

Bye

Bye

8. Lengkapi program berikut ini , dan tunjukkan hasil running outputnya.

class BreakLoop1

{

public static void main (String args[])

{

int i = 0;

do

{

System.out.println("OK");

i++;

if(i>5);

break;

}

}

}

9. Tunjukkan hasil dari program dibawah ini

public static void main(String args [])

{

int x,y;

Struktur Data 3 Page 24

x=5;

y=1;

while(x>0)

{

x=x-1;

y=y*x;

System.out.println(y);

}

}

10. Tunjukkan hasil dari program dibawah ini

public static void main(String args[])

{

int i;

i=1;

while(i<=32)

{

i=2*i;

System.out.println(i);

}

}

}

Jawab :

1. Statemen Control pemograman Java dikategorikan menjadi :

a. Statemen Seleksi ( Sellection Statement) : Seleksi memungkinkan kita

untuk memilih eksekusi terhadap satu atau beberapa bagian dari sutau program

dari pada bagian lain .Java mendukung dua statement seleksi yaitu : if dan

switch.

b. Statemen Iterasi ( Iteration Statement) : Bentuk Statemen iterasi pada

Java adalah for,while, dan do-while. Statemen ini sering disebut sebagai loop.

c. Statemen Jump ( Jump Statemen ) : Java mendukung terhadap tiga jenis

statemen jump : break, continue , dan return.

2. Jenis – jenis Statement Seleksi :

a. Statement IF :Nested-If,If Bertingkat

b. Statemen Switch

3. Jenis – jenis Statemen Iterasi :

a. Statemen while

b. Statemen Do-While

c. Statemen For

Struktur Data 3 Page 25

4. Jenis – jenis Statemen JUMP :

a. Statemen break

b. Statemen Continue

c. Statemen returun

5. Struktur control do-while yang minimal dikerjakan minimal satu kali, karena

akan dikerjakan kemudian dicek.

6. Output dari kelipatan 3 sampai 36 : 3 6 9 12 15 18 21 24 27 30 33 36.

class iterasi1

{

public static void main(String args[])

{

int y=3;

int i;

for(i=0;i<36;y++)

{

i=i+3;

System.out.println(i);

}

}

}

7. Program dan Output

class iterasiSalam

{

public static void main(String args[])

{

int i;

System.out.println("Hello,Java ... ");

for(i=0;i<=4;i++)

{

Struktur Data 3 Page 26

System.out.println("Bye");

}

}

}

8. Program dan output

class BreakLoop1

{

public static void main (String args[])

{

int i = 0;

do

{

System.out.println("OK");

i++;

if(i>5);

break;

}while(i>5);

}

}

9. Hasil program :

Struktur Data 3 Page 27

10. Hasil Program :

VI. Penutup

Struktur kontrol dapat digunakan untuk pengendalian program, missal seperti

if else, if else bertingkat, nested if, break, jump, dan lain-lain.


Top Related