(setiap
praktikan berbeda)
Jawab :
Digunakan saat ada 1 kondisi tetapi
Switch case memiliki nilai yang bervariasi atau
memiliki else lebih dari satu
59
2. Buatlah program beserta algoritma, flowchart, script, dan hasil run dari
persoalan pengolahan air sungai untuk sebuah pabrik.
Suatu pabrik membutuhkan air bersih untuk kebutuhan sehari-sehari.
Inputan awal yaitu debit (Q)
- Air Proses = (m3/hari)
- Air Boiler = (m3/hari)
- Air Sanitasi = (m3/hari)
Setelah itu kebutuhan air (Q1) yang akan diambil dari sumber air di dekat
pabrik (seperti laut/sungai) diamsusikan sebanyak persen npm anda (contoh
npm 20 maka asumsi 20%) lebih besar dari total kebutuhan air total.
Jika debit air dari sungai dialirkan kesuatu unit pengolahan air, langkah
pertama aku ditampung pada wadah penampung air sungai.
Pilihan wadah tersebut dapat berbentuk bak (balok) atau tabung.
Q2 = Q1 – QFLOK
Data yang dibutuhkan adalah lama waktu tinggal (t) berapa hari, dan
asumsi QFLOK 1-10% dari Q1.
Volume air sungai dapat diketahui dari Q1 dan waktu tinggal (t).
60
Kemudian Volume wadah dapat diasumsikan 20%-30% lebih besar
daripada volume air.
Jika balok, asumsi, p = 3x, l = x, t = 2x. Dapat dicari nilai x dari data volume
wadah, dan tentukan panjang lebar tinggi bak tersebut (dalam satuan ft).
Jika tabung, asumsi, D =x, h=2x. Dapat dicari nilai x dari data volume
wadah, dan tentukan diameter dan tinggi tangki tersebut(dalam satuan ft).
61
2. Memasukkan nilai jumlah air proses (m3/hari) , jumlah air boiler (m3/hari),
masukkan jumlah air sanitasi (m3/hari).
3. Proses menghitung Q=a+b+c, Q1=Q+(0.18*Q), Qflok=0.18*Q1, Q2=Q1-
Qflok.
4. Menampilkan hasil perhitungan Q, Q1, Qflok, Q2
5. Memasukkan pilihan anda, jika memilih 1 maka akan menghitung wadah
balok, jika memilih 2 akan menghitung wadah tabung, dan jika memilih 3
akan menampilkan pilihan Anda tidak tersedia
6. Menampilkan hasil perhitungan v, Vwadah, x, p, l, t, h, d
7. Jika if Q2<800 akan menghitung Qkoagulan=0.07*Q2, Q3=Q2+Qflok,
Vair=Q3*t, Vtangki=(g/100)*Vair,
x=((Vtangki*4)/(pi*3))^(1/3)*(3.28084), h=2*x, d=x dan jika elseif Q2>800
akan menghitung Qkoagulan=0.14*Q2, Q3=Q2+Qflok, Vair=Q3*t,
Vtangki=(g/100)*Vair, x=((Vtangki*4)/(pi*3) )^(1/3)*(3.28084), h=2*x,
d=x else ‘tidak ada pilihan’.
8. Menampilkan hasil perhitungan Qkoagulan, Q3, Vair, Vtangki, x, h, d
9. End.
62
Flowchart
Begin
Menghitung
Q=a+b+c
Menampilkan
hasil
perhitungan Q
Menghitung
Q1=Q+(0.18*Q)
Menampilkan hasil
perhitungan Q1
63
A
Menghitung
Qflok=0.18*Q1
Menampilkan
hasil Qflok
Menghitung
Q2=Q1-Qflok
Tidak Tidak
Pilihan anda tidak
Case 1 Case 2
tersedia
Iya Iya
A B C
64
A B C
Memasukkan Memasukkan
waktu waktu
tinggal/ tinggal/
menetap menetap
Menghitung Menghitung
v=Q2/t v=Q2/t
Menghitung Menghitung
Vwadah=((s/ Vwadah=((s/
100)*v)+v 100)*v)+v
Menampilka Menampilka
n hasil n hasil
Vwadah Vwadah
A B C
65
A B C
Menghitung Menghitung
x=(Vwadah/ x=((Vwadah*4)/
6)^(1/ (pi*3))^(1/
3)*(3.28084) 3)*(3.28084)
Menamp Menamp
ilkan ilkan
hasil x hasil x
Menghitung Menghitung
p=3*x h=2*x
Menamp Menamp
ilkan ilkan
hasil p hasil h
Menghitung Menghitung
t=2*x d=x
Menamp Menamp
ilkan ilkan
hasil t hasil d
A B C
66
A B C
Menghitung
l=x
Menamp
ilkan
hasil l
Tidak Tidak
Tidak ada
If Q2<800 If Q2>800
pilihan
Iya Iya
Menghitung Menghitung
Qkoagulan=0 Qkoagulan=0
.07*Q2 .14*Q2
Menampilk Menampilk
an hasil an hasil
Qkoagulan Qkoagulan
Menghitung Menghitung
Q3=Q2+Qflo Q3=Q2+Qflo
k k
A D E
67
A D E
Menghitung Menghitung
Vair=Q3*t Vair=Q3*t
Menghitung Menghitung
Vtangki=(g/ Vtangki=(g/
100)*Vair 100)*Vair
Menampilk Menampilk
an hasil an hasil
Vtangki Vtangki
Menghitung Menghitung
x=((Vtangki* x=((Vtangki*
4)/(pi*3))^(1/ 4)/(pi*3))^(1/
3)*(3.28084) 3)*(3.28084)
A D E
68
A D E
Manampilk Manampilk
an hasil x an hasil x
Menghitung Menghitung
h=2*x h=2*x
Menampilk Menampilk
an hasil h an hasil h
Menghitung Menghitung
d=x d=x
Menampilk Menampilk
an hasil d an hasil d
End
69
Script
clc
clear all
disp('===========================================');
disp(' pengolahan air pabrik ');
disp('===========================================');
a=input('masukkan jumlah air proses (m3/hari)= ');
b=input('masukkan jumlah air boiler (m3/hari)= ');
c=input('masukkan jumlah air sanitasi(m3/hari)= ');
disp('===========================================');
Q=a+b+c;
disp(['maka nilai Q = ',num2str(Q)]);
Q1=Q+(0.18*Q);
disp(['maka nilai Q1 = ',num2str(Q1)]);
Qflok=0.18*Q1;
disp(['maka nilai Qflok = ',num2str(Qflok)]);
Q2=Q1-Qflok;
disp(['maka nilai Q2 = ',num2str(Q2)]);
disp('===========================================');
disp('1.wadah balok');
disp('2.wadah tabung');
d=input('masukkan pilihan wadah = ');
switch d
case 1
disp('=========================================');
disp(' Wadah Balok ');
disp('=========================================');
t=input('masukkan waktu tinggal/menetap =');
70
v=Q2/t;
disp(['maka nilai volume(m3) = ',num2str(v)]);
disp('=========================================');
s=input('masukkan asumsi nilai Vwadah 20%-30% =');
disp('=========================================');
Vwadah=((s/100)*v)+v;
disp(['maka volume wadah =',num2str(Vwadah)]);
x=(Vwadah/6)^(1/3)*(3.28084);
disp(['maka nilai x (ft) =',num2str(x)]);
p=3*x;
disp(['maka nilai panjang balok (ft) = ',num2str(p)]);
t=2*x;
disp(['maka nilai tinggi balok (ft) = ',num2str(t)]);
l=x;
disp(['maka nlai lebar balok (ft) = ',num2str(l)]);
case 2
disp('=========================================');
disp(' Wadah Tabung ');
disp('=========================================');
t=input('masukkan waktu tinggal/menetap = ');
v=Q2/t;
disp('=========================================');
s=input('masukkan asumsi nilai Vwadah 20%-30% = ');
disp('=========================================');
Vwadah=((s/100)*v)+v;
disp(['maka volume wadah = ',num2str(Vwadah)]);
x=((Vwadah*4)/(pi*3))^(1/3)*(3.28084);
disp(['maka nilai x (ft) =',num2str(x)]);
h=2*x;
71
disp(['maka nilai tinggi (ft) = ',num2str(h)]);
d=x;
disp(['maka nilai diameter (ft) =',num2str(d)]);
disp('========================================');
otherwise
disp('pilihan Anda tidak tersedia');
end
disp('==========================================');
disp(' Perhitungan Tangki Koagulan ');
disp('==========================================');
if Q2<800
Qkoagulan=0.07*Q2;
disp(['maka nilai Qkoagulan = ',num2str(Qkoagulan)]);
Q3=Q2+Qflok;
disp(['maka nilai Q3=',num2str(Q3)]);
disp('=====================================');
t=input('masukkan waktu tinggal/menetap = ');
Vair=Q3*t;
disp(['maka nilai Vair = ',num2str(Vair)]);
disp('=====================================');
g=input('masukkan asumsi 10%-30% = ');
Vtangki=(g/100)*Vair;
disp(['maka volume tangki = ',num2str(Vtangki)]);
x=((Vtangki*4)/(pi*3))^(1/3)*(3.28084);
disp('=======================================');
disp(['maka nilai x (ft) = ',num2str(x)]);
h=2*x;
disp(['maka nilai tinggi (ft) =',num2str(h)]);
d=x;
72
disp(['maka nilai diameter (ft) = ',num2str(d)]);
elseif Q2>800
Qkoagulan=0.14*Q2;
disp(['maka nilai Qkoagulan = ',num2str(Qkoagulan)]);
Q3=Q2+Qflok;
disp(['maka nilai Q3 = ',num2str(Q3)]);
disp('=====================================');
t=input('masukkan waktu tinggal/menetap = ');
Vair=Q3*t;
disp(['maka nilai Vair = ',num2str(Vair)]);
disp('=====================================');
g=input('masukkan asumsi 10%-30% = ');
disp('====================================');
Vtangki=(g/100)*Vair;
disp(['maka volume tangki = ',num2str(Vtangki)]);
x=((Vtangki*4)/(pi*3))^(1/3)*(3.28084);
disp(['maka nilai x (ft) =',num2str(x)]);
h=2*x;
disp(['maka nilai tinggi (ft) = ',num2str(h)]);
d=x;
disp(['maka nilai diameter (ft) =',num2str(d)]);
disp('=====================================');
else
disp('tidak ada pilihan');
end
73
Hasil run
1. Wadah balok
74
2. Wadah tabung
75
3. Pilihan yang lain
76