Tag: Decision

  • Belajar Matlab – Contoh Kasus dan Solusi Perhitungan Volume dengan Conditional Statement

    Belajar Matlab – Contoh Kasus dan Solusi Perhitungan Volume dengan Conditional Statement

    AhmadDahlan.NET – Contoh kasus ini didapatkan di artikel Conditional Statement.

    Seorang arsitek merancang sebuah bak penampung air dengan bentuk seperti di bawah !

    Contoh soal menghitung Volume bangun ruang

    Jika jari-jari bawah dari kerucut adalah 15 m dengan ketinggian asli kerucut adalah 7,5 m sebelum dipotong, maka buatlah program yang dapat digunakan untuk menghitung volume air berdasarkan ketinggian air dalam bak!

    Solusi

    1. h < 5

    Kondisi pertama adalah menghitung Volume Air jika ketinggian kurang dari 5 meter. Jika ketinggian air kurang dari 5 meter maka yang dipenuhi dari penampuangan air hanya bagian dasar lantai sehingga dapat di asumsikan

    Maka solusinya adalah ketinggian air dapat dihitung dengan rumus :

    V_{1}=V_{KB}-V_{KK}

    Dengan jari-jari kerucut kecil tidak lain adalah perbandingan antara Tinggi kerucut kecil dan kerucut besar yakni :

    r_h= \frac{h\times15}{7,5}

    Jadi volumenya adalah

    V_1= \frac{1}{3} \pi 15^2 \times7.5 - \frac{1}{3} \pi (\frac{h\times15}{7,5})^2 \times h
    V_1= \frac{1}{3} \pi (1687.5 - 4(h)^3 )

    Dalam bahasa program, solusi dapat ditulis :

    v = (1/3*pi*(1687.5-4*h^3)

    2. h > 5

    Pada saat H > 5, maka Volume air dalam tabung adalah penjumlahan antara volume Potongan kerucut dan Tabung.

    Volume potongan kerucut adalah :

    V_1= \frac{1}{3} \pi (15^2 \times7.5 - (\frac{5\times15}{7,5})^2 \times 5)

    Jadi Volume :

    V_1=\frac{1187.5 \pi}{3} 

    Volume Tabung

    V_2 = \pi \times 10^2 \times (h-5)

    Sehingga Volume totalnya adalah

    V_{total} = \pi (\frac{1187.5 }{3} + 10^2 \times (h-5))

    Dalam bahasa Program ditulis

    v = pi*(1187.5/3+100*(h-5))

    3. h > 15 dan h < 0

    Jika h > 15 maka programnya akan menulis “Tinggi air maksimal 15 meter” dan jika h < 0 maka akan tertulis “Program eror”.

    Solusi Umum dalam Bentuk program

    h=input('Masukkan ketinggian air dalam meter: ');
    if h>15
      disp('ketinggian tidak boleh lebih 15 meter')
    elseif h < 0
      disp('ketinggian tidak boleh minus')
    elseif h <= 5
      v = (1/3*pi*(1687.5-4*h^3);
      fprintf('Volume %7.3f meter kubik.\n',v)
    else
      v = pi*(1187.5/3+100*(h-5))
      fprintf('Volume %7.3f meter kubik.\n',v)
    end
    
  • Belajar Matlab – Conditional Statement : Program If-Else-end di Matlab

    Belajar Matlab – Conditional Statement : Program If-Else-end di Matlab

    AhmadDahlan.NET – Conditional Statement mungkin dapat diartikan harfiah sebagai “Pernyataan Bersyarat” artinya adalah sebuah pernyataan yang dapat dijadikan sebagai dasar atau syarat untuk mengeksekusi perintah lain. Jika syarat terpenuhi akan dilakukan perintah A jika salah maka dilakukan perintah B.

    Misalnya ketika seseorang sedang pergi ke KFC membeli ayam, jika ayam ada maka orang tersebut membeli ayam. Jika ayam tidak ada maka biasanya akan ada dua kemungkinan, misalnya langsung pulang atu bisa juga disambungkan dengan kondisi lain seperti membeli Berger setelah itu baru pulang.

    Dalam kasus ini Syarat yang dijadikan eksekusi adalah ketersediaan ayam untuk melakukan perintah membeli ayam. Sedangkan eksekuisnya bisa bercabang yakni pulang atau membeli produk lain, tapi dari setiap program harus ada ending instruksi yakni pulang. Namun syarat dalam kasus ini hanya ada satu conditional statement.

    Conditional Statement menjadi lebih powerfull dalam Matlab jika digabungkan dengan operator relational. Adapun contoh dan bentuk conditional Statement seperti berikut ini :

    1. if Fgs > w
    2. if price >= 5000
    3. if a == b
    4. if F ~= 0
    5. if (d<h)&(x>7)
    6. if (x~=13)|(y<0)

    Statement if secara umum digunakan dalam struktur pohon (three structures) seperti : (1) if – end, (2) if – else – end, (3) if-else-if-else-end dan seterusnya. Tingkat kerumitan dari struktur conditional statement bergatung dari programernya.

    A. Struktur if-end (Sequence)

    Struktur if-end ini adalah struktur conditional paling sederhana, dimana jika syarat terpenuhi (1) maka eksekusi akan dilakukan jika tidak (0) maka program berakhir. Tipenya lebih ke arah sequence seperti di bawah ini

    conditional statement di Matlab if els sequence

    Contoh masalah dan pemodelan kasus di Matlab :

    Sebuah benda bermassa m terikat dengan seutas tali dengan gaya tegangan maksimum 20 N, jika benda dan meja licin maka buatlah mengukur percepatan benda!

    Solusinya adalah memberikan input gaya ke dalam program dengan syarat jika F > 20 maka hitung percepatan dengan persamaan

     a= \frac {F - 20}{m}

    Contoh Programnya Seperti ini :

    F=input ('masukkan gaya');
    m=input ('masukkan massa');
    if F>20 
         a = (F-20)/m
    end
    fprintf('Percepatan benda %5.2f',a)

    B. Struktur if-else-end (Decision)

    Struktur if-else-end adalah struktur algoritma dimana syarat yang dijadikan sebagai logikal statement mengarahkan ke dua pilihan, jika masukan bernilai 1 maka mengeksekusi perintah A, jika pilihan bernilai 0, maka akan mengeksekusi perintah B, setelah perintah dieksekusi maka program akan berhenti.

    Bagan Struktur if-else-end sebagai berikut :

    The if-else-end structure provides struktur

    Struktur ini masih bisa digabungkan lagi dengan algoritma if-else-end. Umumnya struktur ini disebut dengan if-elseif-else-end. Strukturnya sebagai berikut :

    Struktur If Elseif else end dalam Algoritma Matlab

    Contoh program ini seperti pengimputan nilai mata kuliah dan IPK misalnya Jika skorenya Lebih besar dari 3,75 maka Nilai A, jika skornya lebih besar 3,25, maka nilai A-, jika tidak maka Nilainya B+, logika ini bisa diteruskan sesuai dengan kebutuhan.

    Skore=input ('masukkan skore');
    if Skore > 3,75
         fprint ('A')
    elseif Skore > 3,25
         fprint ('A-')
    else Skore > 2,75
         fprint ('B+')
    end

    Dalam struktur porgram diatas, program tidaklah power full dengan kata lain jika kita tidak memasukkan nilai yang terdapat dalam program maka program akan error.

    Misalnya kita masukkan Skore = 2,0. Skore 2,0 tidak masuk karena program hanya mengenal angka paling kecil >2,75. Skore 2,75 pun akan membuat program error. Untuk membuat struktur lebih baik sebaiknya perintah terkahir hanya berisi perintah yang tidak memenuhi syarat pertama dan kedua seperti :

    Skore=input ('masukkan skore');
    if Skore > 3,75
         disp ('A')
    elseif Skore > 3,25
         disp ('A-')
    else 
         disp ('B+')
    end

    Dengan demikian program sudah mencakup seluruh kemungkinan angka yang bisa dimasukkan.

    Latihan

    Seorang arsitek merancang sebuah bak penampung air dengan bentuk seperti di bawah !

    Contoh soal menghitung Volume bangun ruang

    Jika jari-jari bawah dari kerucut adalah 15 m dengan ketinggian asli kerucut adalah 7,5 m sebelum dipotong, maka buatlah program yang dapat digunakan untuk menghitung volume air berdasarkan ketinggian air dalam bak!

    Solusi di sini : Solusi Program Hitung Volum Bangun Ruang di Matlab