AhmadDahlan.NET – Contoh kasus ini didapatkan di artikel Conditional Statement.
Seorang arsitek merancang sebuah bak penampung air dengan bentuk seperti di bawah !
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