Switch Statement pada PHP | Hello World #11

March 23, 2019 , , 0 Comments



Halo temen temen. Kali ini gue mau share lagi tutorial programing. Masih tentang php kali ini akan membahas tentang switch statement. Sebelum masuk ke pembahasan ini lebih baik kalian lihat dulu pembahasan sebelumnya tentang if statement disini. Karena materi switch statement ini mirip dengan if statement sebelumnya. Oke mari kita bahas.

Pengertian

Switch statement adalah syntax yang digunakan untuk menyatakan suatu pernyataan kondisional. Perbedaannya dengam if statement adalah dalam konsep switch persyaratan hanya diuji sekali. Proses pencarian langsung menuju value yang cocok. Sedangkan pada konsep if persyaratan diuji beberapa kali. Proses pencarian dimulai dari syarat paling atas kemudian turun ke bawah. Dengan penjelasan di atas dapat diketahui bahwa konsep switch menghasilkan proses yang  lebih cepat. Jika kita membuat program yang memiliki syarat yang banyak, maka lebih baik menggunakan switch statement.

Penulisan

switch(var)
{
case 1: statement A;
 break;
case 2: statement B; 
 break;
case 3: statement C;
 break;
default : statement D;
}

Penjelasan
Dalam syntax di atas "var" akan dicek. Terdapat pilihan-pilihan (case) yang setiap case memiliki statement yang berbeda dan selalu diakhiri dengan "break;". Jika tidak ada case yang cocok maka pilihan default yang akan dijalankan.

Untuk lebih memahami konsep ini. Gue kasih beberapa soal serta jawabannya di bawah.
1. Misalkan diberikan script berikut ini
<?php
$bil = 10;
switch ($bil)
{
case 5    : echo "Bilangan sama dengan 5 <br />";
    break;
case 8    : echo "Bilangan sama dengan 8 <br />";
    break;
case 10    : echo "Bilangan sama dengan 10 <br />";
case 12    : echo  "Bilangan sama dengan 12 <br />";
defaut    : echo "Bilangan tidak sama dengan 5, 8, 10 dan 12 <br />";
    break;
}
?>   
Dengan tanpa menjalankan script di browser, tebak hasil outputnya dan simpulkan!


Kesimpulan
Hasil yang ditampilkan langsung menuju case 10, semua statement yang terdapat di case 10 sebelum syntax break akan ditampilkan ke layar. Jadi penting untuk menuliskan syntax break pada akhir statement yang ingin kita tampilkan.

2. Kerjakan kembali soal no.5 if statemen. Gunakan konsep SWITCH!
Keterangan: Gunakan komponen radio button dalam memilih golongan gaji.
input form
<html>
<body>
<h1>form cek gaji per golongan</h1>

<form method="post"action="outputtugas2.php">
    Jumlah Jam Kerja <input type="text" name="jam" /><br/>
    Golongan 
    <input type="radio" name="gol" value="A">A
    <input type="radio" name="gol" value="B">B
    <input type="radio" name="gol" value="C">C
    <input type="radio" name="gol" value="D">D<br>
    <input type="submit" name="submit" value="Submit" />
    
</form>

</body>
</html>

output form
<html>
<h1>Terimakasih telah menggunakan layanan kami</h1>
<?php

$jam = $_POST['jam'];
$gol = $_POST['gol'];
$uplembur=3000;
$upah1 = 4000;
$upah2 = 5000;
$upah3 = 6000;
$upah4 = 7500;
//A
$gajiA = $jam*$upah1;
$lembur = ($jam - 48) * $uplembur;
$glA = (48 * $upah1) + $lembur;
$g1 = 48*$upah1;
//B
$gajiB = $jam*$upah2;
$lembur = ($jam - 48) * $uplembur;
$glB = (48 * $upah2) + $lembur;
$g2 = 48*$upah2;
//C
$gajiC = $jam*$upah3;
$lembur = ($jam - 48) * $uplembur;
$glC = (48 * $upah3) + $lembur;
$g3 = 48*$upah3;
//D
$gajiD = $jam*$upah4;
$lembur = ($jam - 48) * $uplembur;
$glD = (48 * $upah4) + $lembur;
$g4 = 48*$upah4;

    echo "Jumlah Jam Kerja ".$jam." jam/minggu <br>";

    switch($jam)
    {
        case $jam<=48 && $gol == 'A' : 
                echo "Golongan ".$gol."<br>";
                echo "Gaji = Rp. ".$gajiA;
            break;
        case  $jam<=48 && $gol == 'B' :
                echo "Golongan ".$gol."<br>";
                echo "Gaji = Rp. ".$gajiB;
            break;
        case  $jam<=48 && $gol == 'C' :
                echo "Golongan ".$gol."<br>";
                echo "Gaji = Rp. ".$gajiC;
            break;
        case $jam<=48 && $gol == 'D' :
                echo "Golongan ".$gol."<br>";
                echo "Gaji = Rp. ".$gajiD;
            break;
        case $jam>48 && $gol == 'A' : 
            echo "Golongan ".$gol."<br>";
            echo "Gaji pokok = Rp. ".$g1."<br>";
            echo "Gaji lembur = Rp. ".$lembur."<br>";
            echo "Total gaji = Rp. ".$glA."<br>";
        break;
        case  $jam>48 && $gol == 'B' :
            echo "Golongan ".$gol."<br>";
            echo "Gaji pokok = Rp. ".$g2."<br>";
            echo "Gaji lembur = Rp. ".$lembur."<br>";
            echo "Total gaji = Rp. ".$glB."<br>";
        break;
        case  $jam>48 && $gol == 'C' :
            echo "Golongan ".$gol."<br>";
            echo "Gaji pokok = Rp. ".$g3."<br>";
            echo "Gaji lembur = Rp. ".$lembur."<br>";
            echo "Total gaji = Rp. ".$glC."<br>";
        break;
        case $jam>48 && $gol == 'D' :
            echo "Golongan ".$gol."<br>";
            echo "Gaji pokok = Rp. ".$g4."<br>";
            echo "Gaji lembur = Rp. ".$lembur."<br>";
            echo "Total gaji = Rp. ".$glD."<br>";
        break;
        default : echo "silahkan pilih golangan terlebih dahulu<br>";
            break;
    }
?>
<form method="post" action="tugas2.php">
<input type="submit" name="reset" value="Reset" /> 
</form>
</html>



3. Kerjakan kembali soal no.2 if statement menggunakan konsep SWITCH

input form
<html>
<body>
<h1>form cek gaji</h1>

<form method="post"action="outputtugas3.php">
    Jumlah Jam Kerja <input type="text" name="jam" /><br/>
    <input type="submit" name="Submit" value="Submit" /><br/>
</form>

</body>
</html>

output form
<html>
<h1>Terimakasih telah menggunakan layanan kami</h1>
<?php

$jam = $_POST['jam'];
$upah1 = 2000;
$upah2 = 3000;
$gaji1 = $jam * $upah1;
$lembur = ($jam - 48) * $upah2;
$gaji2 = (48 * $upah1) + $lembur;
$gaji3 = 48 * $upah1;

echo "Jumlah Jam Kerja ".$_POST['jam']. " jam/minggu <br>";

    switch($jam)
    {
        case $jam<=48 : 
            echo "Gaji = Rp. ".$gaji1;
            break;
        case $jam > 48;
            echo "Gaji pokok = Rp. ".$gaji3."<br>";
            echo "Gaji lembur = Rp. ".$lembur."<br>";
            echo "Total gaji = Rp. ".$gaji2."<br>";
            break;
        default : echo "silahkan masukkan jam terlebih dahulu<br>";
            break;
    }      
?>
<form method="post" action="tugas3.php">
<input type="submit" name="reset" value="Reset" /> 
</form>
</html>



4. Dengan menggunakan konsep SWITCH, buatlah script untuk membaca bulan saat ini dan tampilkan jumlah hari dalam bulan tersebut.

<html>
<?php
$angkaBln=date("n");
switch($angkaBln)
{
case 1 : $namaBln="Januari";
    break;
case 2 : $namaBln="Februari";
    break;
case 3 : $namaBln="Maret";
    break;
case 4 : $namaBln="April";
    break;
case 5 : $namaBln="Mei";
    break;
case 6 : $namaBln="Juni";
    break;
case 7 : $namaBln="Juli";
    break;
case 8 : $namaBln="Agustus";
    break;
case 9 : $namaBln="September";
    break;
case 10 : $namaBln="Oktober";
    break;
case 11 : $namaBln="November";
    break;
case 12 : $namaBln="Desember";
    break;
}
$hari=date("n");
switch($hari)
{
case 1 : $hari="31";
    break;
case 2 : $hari="28";
    break;
case 3 : $hari="31";
    break;
case 4 : $hari="30";
    break;
case 5 : $hari="31";
    break;
case 6 : $hari="30";
    break;
case 7 : $hari="31";
    break;
case 8 : $hari="31";
    break;
case 9 : $hari="30";
    break;
case 10 : $hari="31";
    break;
case 11 : $hari="30";
    break;
case 12 : $hari="31";
    break;
}
echo "Sekarang adalah bulan ".$namaBln."<br>";
echo "Bulan ".$namaBln." memiliki ".$hari." hari";
?>
</html>


5. Buatlah aplikasi sederhana untuk menghitung luas beberapa bangun datar. Pertama buat halaman index.php yang isinya menu pilihan berbentuk radio button atau combo box yang itemnya sbb:
    - Bujur sangkar
    - Persegi panjang
    - Lingkaran
    - Segitiga
Dan sebuah tombol submit di bawah pilihan menu tersebut.
Misalkan apabila user memilih menu Bujur Sangkar dan ia mengklik submit, maka nantinya akan muncul form untuk mengisikan panjang sisi bujur sangkar dan sebuah tombol submit. Jika tombol submit ini diklik maka selanjutnya akan muncul hasil luasnya. Selanjutnya bila user memilih Persegi Panjang dalam menunya dan ia mengklik submit maka akan muncul form untuk mengisikan panjang dan lebar persegi panjang serta sebuah tombol submit. Bila tombol ini diklik maka akan memunculkan hasil luas persegi panjang. Begitu seterusnya.

menu pilihan
<html>
<body>
<h1>aplikasi menghitung luas</h1>

<form method="post"action="outputtugas5.php">
    pilih bangun datar<br> 
    <select name="bangun">
        <option value="bujur" name="bangun">bujur sangkar</option>
        <option value="persegi" name="bangun">persegi panjang</option>
        <option value="lingkaran" name="bangun">lingkaran</option>
        <option value="segitiga" name="bangun">segitiga</option>
    </select><br>
    <input type="submit" name="Submit" value="Submit" /><br/>
</form>
</body>
</html>

input form
<html>
<h1>Terimakasih telah menggunakan layanan kami</h1>

<?php
$bangun = $_POST['bangun'];

switch ($bangun)
{
    case $bangun == 'bujur': 
    echo "Menghitung Luas Bujur sangkar"

?>
<form method="post" action="bujur.php">
Sisi pertama<input type="text" name="s1" /><br/>
Sisi kedua<input type="text" name="s2" /><br/>
<input type="submit" name="Submit" value="Submit" /><br/>
</form>

<?php
break;
    case $bangun == 'persegi':
    echo "Menghitung Luas Persegi panjang"
?>
<form method="post" action="persegi.php">
panjang<input type="text" name="panjang" /><br/>
lebar<input type="text" name="lebar" /><br/>
<input type="submit" name="Submit" value="Submit" /><br/>
</form>

<?php
break;
    case $bangun == 'lingkaran':
    echo "Menghitung Luas Lingkaran"
?>
<form method="post" action="lingkaran.php">
masukkan jari-jari<input type="text" name="jari" /><br/>
<input type="submit" name="Submit" value="Submit" /><br/>
</form>

<?php
break;
    case $bangun == 'segitiga':
echo "Menghitung Luas Segitiga"
?>
<form method="post" action="segitiga.php">
masukkan alas<input type="text" name="alas" /><br/>
masukkan tinggi<input type="text" name="tinggi" /><br/>
<input type="submit" name="Submit" value="Submit" /><br/>
</form>

<?php
break;
}
?>
</html>

output form
bujur sangkar
<html>
<h1>Terimakasih telah menggunakan layanan kami</h1>

<?php
$hitung = $_POST['bangun'];
$s1 = $_POST['s1'];
$s2 = $_POST['s2'];
//rumus
$bujur=$s1*$s2;
echo "Menghitung Luas Bujur sangkar <br>";
    echo "Sisi pertama ".$s1."<br>"; 
    echo "Sisi kedua ".$s2."<br>";
    echo "Luas bujur sangkar = ".$bujur."<br>";
?>
<form method="post" action="tugas5.php">
<input type="Submit" name="Reset" value="Reset" /><br/>
</form>
</html>
persegi panjang
<html>
<h1>Terimakasih telah menggunakan layanan kami</h1>

<?php
$hitung = $_POST['bangun'];
$p = $_POST['panjang'];
$l = $_POST['lebar'];
//rumus
$persegi=$p*$l;
echo "Menghitung Luas persegi panjang <br>";
    echo "Panjang = ".$p."<br>"; 
    echo "Lebar = ".$l."<br>";
    echo "Luas persegi panjang = ".$persegi."<br>";
?>
<form method="post" action="tugas5.php">
<input type="Submit" name="Reset" value="Reset" /><br/>
</form>
</html>
lingkaran
<html>
<h1>Terimakasih telah menggunakan layanan kami</h1>

<?php
$hitung = $_POST['bangun'];
$jari = $_POST['jari'];
//rumus
$lingkaran=3.14*$jari*$jari;
echo "Menghitung Luas lingkaran <br>";
    echo "Jari - jari = ".$jari."<br>"; 
    echo "Luas lingkaran = ".$lingkaran."<br>";
?>
<form method="post" action="tugas5.php">
<input type="Submit" name="Reset" value="Reset" /><br/>
</form>
</html>
segitiga
<html>
<h1>Terimakasih telah menggunakan layanan kami</h1>

<?php
$hitung = $_POST['bangun'];
$alas = $_POST['alas'];
$tinggi = $_POST['tinggi'];
//rumus
$segitiga=0.5*$alas*$tinggi;
echo "Menghitung Luas segitiga <br>";
    echo "Alas = ".$alas."<br>"; 
    echo "Tinggi = ".$tinggi."<br>";
    echo "Luas segitiga = ".$segitiga."<br>";
?>
<form method="post" action="tugas5.php">
<input type="Submit" name="Reset" value="Reset" /><br/>
</form>
</html>







Oke mungkin sekian tutorial ini. Jika ada yang kurang jelas silahkan berkomentar. Selamat berkreasi tunggu update selanjutnya. Cheerioo






0 comments: