• Tidak ada hasil yang ditemukan

Think Different Materi Pemrograman Web 1 03_Control Flow

N/A
N/A
Protected

Academic year: 2017

Membagikan "Think Different Materi Pemrograman Web 1 03_Control Flow"

Copied!
11
0
0

Teks penuh

(1)

Struktur Kontrol

Aryo Pinandito, ST, M.MT Fajar Pradana, S.ST, M.Eng Issa Arwani, S.Kom, M.Sc

1 . PEN D AH U LUAN beberapast at em en y ang digunak an unt uk proses k husus. Lebih det ail lagi dalam PHP sepert ibahasa C m aupun j av a m em ilik i beberapa st ruk t ur k ont rol program . Denganm enggunak an st rukt ur- st rukt ur ini m ak a j alanny a program t idak selalu berurut ansesuai dengan k ondisi y ang dit em ui.

1 .2 Tu j u a n

(2)

Halaman28

Pemrograman Web / Struktur Kontrol

Brawijaya University

2012

2 . PEN GAN TAR CON TROL FLOW

Cont rol flow dalam bahasa I ndonesia dapat diart ik an sebagai aliran k endali. Mak sud sebenarny a dari cont rol flow adalah bagaim ana u rut an ek sekusi perint ah di dalam program .

Misalny a, dalam funct ion :

function testFlow() {

int a = 5; echo(a); }

Perint ah pert am a y ang dij alank an adalah m engisi nilai 5 k e dalam v ariabel a. Per int ah k edua y ang dij alank an adalah m enam pilk an nilai y ang t ersim pan dalam v ariabel a ( dalam hal ini 5) k e brow ser. Cont r ol flow di at as m erupak an sebuah cont oh sederhana. Beberapa cont rol flow y ang t ersedia dalam PHP :

• Percabangan ( branching)

• Perulangan ( looping)

• Perpindahan ( j um ping)

3 . STRUKTUR PERCABAN GAN

Percabangan, at au sering disebut j uga dengan ist ilah decision- m ak ing, m em ungk ink an aplik asi unt uk m em erik sa isi suat u v ariabel at au hasil perhit ungan ek spresi dan m engam bil t indak an y ang sesuai. Ada dua j enis percabangan, dipilih berdasark an k rit eria pem erik saan dan j um lah pilihan y ang t ersedia.

3 .1 if – e lse

Konst ruk si if- else dapat dij elask an sebagai berik ut :

if(condition) {

// statement 1 goes here }

else {

// statemant 2 goes here }

// statement 3 goes here

Aliran pr ogram :

1. Condit ion ak an diperik sa

2. Bila bernilai t rue, st at em ent 1 ak an dij alank an

3. Bila bernilai false, st at em ent 2 akan dij alank an

(3)

3 .2 if - e lse if - e lse

Unt uk pilihan y ang lebih dari dua, PHP m eny ediak an k onst ruk si if- elseifelse.

if(condition1) {

// statement 1 }

elseif(condition2) {

// statement 2 }

else {

// statement 3 }

// statement 4

Aliran pr ogram :

Ada 3 k em ungk inan aliran pr ogram :

1. Apabila condit ion 1 bernilai t rue :

• St at em ent 1 dij alank an

• St at em ent 4 dij alank an

2. Apabila condit ion 1 bernilai false, dan condit ion 2 bernilai t rue :

• St at em ent 2 dij alank an

• St at em ent 4 dij alank an

3. Apabila condit ion 1 dan condit ion 2 bernilai false :

• St at em ent 3 dij alank an

• St at em ent 4 dij alank an Cont oh penggunaan I f St at em ent

//Contoh1.php <?php

$nilai = 80;

if ($nilai >= 60) {

echo "Nilai Anda $nilai, Anda LULUS"; }

?>

Pada pr ogram di at as, t erdapat pem erik saan k ondisi apak ah isi v ariabel $nilailebih dari 60 ( baris 3) . Jik a k ondisi ini bernilai TRUE ( v ariabel $nilai berisi nilai y an g lebih besar dari 60) m ak a st at em ent pada baris k e- 4 ak an dij alank an. Sebalik ny a j ik a k ondisiny a FALSE, m ak a st at em ent pada baris k e- 4 t idak ak an dij alank an.

//Contoh2.php <?php

$nilai = 50;

if ($nilai >= 60) {

(4)

Halaman30

Pemrograman Web /Struktur Kontrol

Brawijaya University

2012

} else {

echo "Nilai Anda $nilai, Anda GAGAL"; } baris k e- 3 bernilai FALSE k arena isi v ariabel $nilai adalah 50.

//Contoh3.php <?php

$user = "fajar"; $pass = "123"

if ($user == "fajar" && $pass == "123") { echo "Login Berhasil";

echo "Variabel tidak ada/belum terbentuk"; } else {

// statement 1 goes here break;

case 2;

// statement 2 goes here break;

(5)

// statement 3 goes here break;

default;

// statement 4 goes here break;

}

// statement 5 goes here

Aliran pr ogram :

1. Variabel a diperik sa

2. St at em ent dieksek usi

• Apabila a = = 1, st at em ent 1 dij alank an

• Apabila a = = 2, st at em ent 2 dij alank an

• Apabila a = = 3, st at em ent 3 dij alank an

• Apabila a t idak m em enuhi 2a - 2c, st at em ent 4 dij alank an 3. St at em ent 5 dij alank an

Key w ord break m em egang peranan pent ing di sini. Fungsiny a adalahm encegah fall- t hrough, bandingk an dengan pr ogram berik ut ( break dibaris k e 5 dihilangk an)

switch(a){ case 1;

// statement 1 goes here case 2;

// statement 2 goes here break;

case 3;

// statement 3 goes here break;

default;

// statement 4 goes here break;

}

Aliran pr ogram :

1. v ariabel a diperik sa

2a. Apabila a = = 1, st at em ent 1 dij alank an, k em udianm enj alank an st at em ent 2.

2b. Apabila a = = 2, st at em ent 2 dij alank an

2c. Apabila a = = 3, st at em ent 3 dij alank an

2d. Apabila a t idak m em enuhi 2a - 2 c, st at em ent 4 dij alank an

3. St at em ent 5 dij alank an

(6)

Halaman32

Pemrograman Web /Struktur Kontrol

Brawijaya University

2012

/ / cont oh5.php

<?php

$day = date ("D"); switch ($day) {

case 'Sun' : $hari = "Minggu"; break; case 'Mon' : $hari = "Senin"; break; case 'Tue' : $hari = "Selasa"; break; case 'Wed' : $hari = "Rabu"; break; case 'Thu' : $hari = "Kamis"; break; case 'Fri' : $hari = "Jum'at"; break; case 'Sat' : $hari = "Sabtu"; break; default : $hari = "Kiamat";

}

echo "Hari ini hari <b>$hari</b>"; ?>

Pada pr ogram di at as, v ariabel $day ( baris k e- 2) ak an berisi 3 ( t iga) digit pert am a dari nam a hari dalam bahasa I nggris. Dengan fungsi date(), k it a ak an m em per oleh inform asi t anggal, hari dan w ak t u sek arang. Fungsi ini ak an diperlaj ari lebih lanj ut pada Bab m endat ang. Selanj ut ny a isi v ariabel $day ak an diperik sa dengan sw it ch ( baris k e- 3) , j ik a isiny a adalah ‘Sun’ m ak a $hari adalah “ Minggu” dan set erusny a.

4 . St r u k t u r Pe r u la n g a n

4 .1 for

Looping dengan for disebut j uga det erm inat e loop, art iny a looping y angj um lah pengulanganny a ( it erasi) t elah dit ent uk an di aw al looping.Ada beberapa bagian pent ing dari for loop:

• I nit ializat ion ex pression

• St op condit ion

• I t erat iv e ex pression

• Loop body

I nit ializat ion Ex pression dij alank an sat u k ali, pada saat looping dim ulai. Biasany a bagian ini digunak an unt uk m enginisialisasi count er( penghit ung) . St op condit ion diperik sa nilainy a sebelum set iap it erasi diek sek usi. Apabila condit ion bernilai false, it erasi dihent ik an.

I t erat iv e ex pression dilak uk an set elah it erasi diek sek usi. Bagian ini biasany a digunak an unt uk m enam bah nilai count er. Loop body diek sekusi sek ali set iap it erasi, m er upak an perint ah y ang ingin k it a lak uk an berulang- ulang.

4 .2 w h ile

While loop j uga dik enal dengan ist ilah indet erm inat e loop, art iny a j um lah loopin gny a t idak dit ent uk an pada aw al looping. w hile loop lebih sederhana daripada for loop, k arena cum a m em ilik i dua bagian: St op Condit ion dan Loop Body

(7)

I t erasi ak an dihent ik an apabila st op condit ion bernilai false. Sam a sepert i pada for loop, loop

Cont oh Penggunaan While

(8)

Halaman34

Pemrograman Web /Struktur Kontrol

Brawijaya University

2012

$i = 1;

while ($i <= 10): echo "$i";

$i++; endwhile;

echo "<br><br>"; /* contoh 3 */ $i = 1;

while ($i <= 6) {

echo "<h$i>Heading $i</h$i>"; $i++;

} ?>

Program di at as m erupak an beberapa v ariasi perulangan dengan w hile. Cont oh y ang pert am a ( baris 3- 6) m erupak an bent uk y ang paling um um dipak ai. Blok perint ah ( baris 5) ak an dij alank an selam a pem erik saan k ondisi pada baris k e- 4 bernilai TRUE. Cont oh k edua m erupak an bent uk lain dari w hile, bent uk ini j arang digunak an. Pada cont oh k et iga, penggunaan perulangan unt uk m enam pilk an t ulisan dengan form at < H1> sam pai < H6>

Cont oh penggunaan do w hile

<?php $i = 1; do {

echo "$i "; $i+=2;

} while ($i <= 20); ?>

Program di at as ak an m enam pilk an bilangan ganj il ant ara 1 sam pai 20 m enggunak an st ruk t ur perulangan do..w hile. Pada st ruk t ur perulangan do...w hile, pem erik saan k ondisi berada di baw ah.

5 . St r u k t u r Pe r pin da h a n

5 .1 br e a k

Break digunak an dalam looping unt uk m enghent ik an suat u loop. Unt uk lebih j elasny a, perhat ik an k ode berik ut :

<?

// melakukan break pada $i == 2 for($i = 0; $1<5; $i++){

if($i == 2){

break;

}

echo("Nilai i : $i <br>"); }

(9)

k ode t ersebut ak an m elak uk an break pada saat i bernilai 2, sehingga ak an m enghasilk an out put sebagai berik ut :

Nilai i : 0

Nilai i : 1

Loop Selesai

5 .2 con t in u e

Cont inue berfungsi unt uk m elew at i sat u it erasi/ put aran dalam rangk aian loop. Unt uk lebih j elasny a, k ode di at as ak an k it a m odifik asi.

<?

// melakukan continue pada $i == 2 for($i = 0; $1<5; $i++){

if($i == 2){

continue;

}

echo("Nilai i : $i <br>"); }

echo("Loop Selesai"); ?>

k ode t ersebut ak an m elak uk an break pada saat i bernilai 2, sehingga ak an m enghasilk an out put sebagai berik ut :

Nilai i : 0

Nilai i : 1

Nilai i : 3

Nilai i : 4

Loop Selesai

5 .3 r e t u r n

Perint ah ret urn berfungsi unt uk m em erint ahk an k ode unt uk k eluar dari fungsi. Fungsi ak an k it a pelaj ari dengan lebih m endalam pada bagian selanj ut ny a. Unt uk sem ent ara, fungsi cum a ak an digunak an unt uk m enj elask an ret urn. Perhat ik an k ode di baw ah :

<?

function testReturn(){ for($i = 0; $1<5; $i++){

// melakukan return pada $i == 2 if($i == 2){

return; }

echo("Nilai i : $i <br>"); }

echo("Loop Selesai"); }

// jalankan function testReturn();

(10)

Halaman36

Pemrograman Web /Struktur Kontrol

Brawijaya University

2012

out put ny a adalah :

Nilai i : 0

Nilai i : 0

Funct ion Selesai

Perhat ik an bahw a Loop Selesai t idak dij alank an. I ni m enunj uk k an bahw a set elah ret urn diek sekusi, program langsung k eluar dari funct ion dan m engek sekusi perint ah set elah funct ion, y ait u

echo(“Function Selesai”);

5 .4 e x it

ex it digunak an unt uk m enghent ik an k eseluruhan script php. Unt uk lebih j elasny a, k it a ak an m odifik asi k ode di at as m enj adi sepert i berik ut :

<?

function testExit(){ for($i = 0; $1<5; $i++){

// melakukan return pada $i == 2 if($i == 2){

exit; }

echo("Nilai i : $i <br>"); }

echo("Loop Selesai"); }

// jalankan function testExit();

echo("Function selesai"); ?>

out put ny a adalah :

Nilai i : 0

Nilai i : 0

Funct ion Selesai

Perhat ik an bahw a baris

echo("Function selesai");

(11)

REFEREN SI

Mercer, Dav e. 2004. Beginning PHP 5. Wr ox Press. I ndianapolis, I ndiana. Solichin, Achm ad.S.Kom . Pem rogram an Web dengan PHP dan MYSQL. 2 011

PROPAGASI

A. La t ih a n da n D isk u si ( Pr opa ga si V e r t ik a l da n H or iz on t a l)

1. Sebut k an dan Jelask an 3 St ruk t ur cont rol y ang dim ilik i PHP

2. Apa fungsi dari perint ah ret urn

B. Tu ga s ( Ev a lu a si m a n dir i)

1.Buat lah program unt uk m enam pilk an bilangan fibonaci

Referensi

Dokumen terkait

Tujuan penelitian ini adalah untuk mengetahui pengaruh partisipasi pemakai sistem dan dukungan manajemen terhadap kinerja sistem informasi akuntansi yang diperoleh

drops out; (5) Peak of excitement, in this  state  the  duration  of  the  intense  state  is  shorter  and  intersperse  with  efforts  to  control  the 

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI... PLAGIAT MERUPAKAN TINDAKAN

Panitia Pengadaan Barang/Jasa Biro Umum dan Perlengkapan Setda Provinsi Banten akan melaksanakan Pelelangan Umum dengan Pascakualifikasi untuk paket pekerjaan pengadaan sebagai

Observasi pra-PPL menyangkut perangkat pembelajaran (meliputi kurikulum, silabus, dan RPP), proses pembelajaran (meliputi cara membuka pelajaran, menyajikan materi,

Sehubungan dengan pelaksanaan Pemilihan Penyedia Jasa Konsultansi pada Dinas Kesehatan Kabupaten Manggarai Barat dan berdasarkan Berita Acara Hasil Prakualifikasi

Dengan ini diberitahukan bahwa setelah dilakukan evaluasi oleh Kelompok Kerja Unit Layanan Pengadaan Barang/Jasa Pemerintah yang dibentuk berdasarkan surat keputusan Bupati

[r]