Anda di halaman 1dari 18

LABORATORIUM TEKNIK KIMIA

FAKULTAS TEKNIK
UPN “VETERAN” JAWA TIMUR Nama : MEGAWATI SETIAWAN P
NPM/Semester : 19031010056/1
Praktikum :PEMROGRAMAN KOMPUTER Sesi : VII
Percobaan : LOOPING STATEMENT DALAM Paralel :B
BAHASA PASCAL
Tanggal : 3 OKTOBER 2019
Pembimbing : Dr. T. Ir. DYAH SUCI P, MT
LAPORAN RESMI

Soal :
1. Jelaskan secara rinci apa itu statement perulangan serta perbedaan-perbedaan
dari Statement FOR-DO/DOWN-TO , REPEAT-UNTIL, dan WHILE-DO !
jelaskan dalam bentuk tabel. Beserta contoh programnya masing-masing.
2. Perhatikan Gambar dibawah ini :

50% H − 50% A
200oC 1 atm 𝐈
X𝐴 = 0.8
50% H − 50% A
200oC 1 atm
𝐈𝐈 X𝐴 = 0.65
50% H − 50% A
200oC 1 atm

X𝐴 = 0.4
𝐈𝐈𝐈

Tiga buah reactor plug flow dengan beda ukuran masing-masing digunakan untuk
mereaksikan gas, dengan reaksi sebagai berikut :
𝟒−𝟐
Reaksi : H+A 2S + A + N , 𝛆𝐀 = =𝟏
𝟐

Reaksi tersebut adalah reaksi orde 2 yang berlangsung pada suhu 200oC pada
tekanan 1 atm. Komponen A merupakan inert yang tidak ikut bereaksi.
Berikut adalah rumus plug flow pada orde ke-2 :
XA
kτCA0 = 2εA (εA + 1) ln(1 − XA ) + εA 2 XA + (εA + 1)2
1 − XA
dengan menggunakan Persamaan diatas buatlah suatu program lengkap dengan
algoritma, script , flowchart dan hasil run dimana terdapat 3 pilihan, yaitu reactor

57
plug flow I , II, dan III. Setiap pilihan menunjukkan hasil perhitungan dari reactor
plug flow tersebut . Berilah kesimpulan mana yang memiliki nilai kτCA0 terbesar!
3. Perhatikan rancangan berikut ini :

10 ft

2.5 ft
6 ft
H3PO4 30 ft
10 ft

8 ft
NH3

52 ft
Sebuah reactor diumpankan Asam fosfat dan gas ammonia. Asam fosfat yang
diumpankan dengan konsentrasi 85% dengan bantuan pompa. Pipa yang digunakan
untuk mengumpankan Asam Fosfat memiliki ukuran 2 Inchi sch. 40 dengan
panjang total = (10 + 30 + 6 + 10 + 2.5) ft . Tidak terdapat ekspansi maupun
kontraksi pada pipa. Ada 3 elbow 90o . Hitunglah berapa besar power pompa yang
dibutuhkan untuk memompa Asam Fosfat jika diketahui macam-macam debit
dengan aliran turbuken sebagai berikut :

Debit Kecepata Energi Energi Energi Friction -Wf


(ft3/jam) n Linier Potensial Kinetik Tekanan Loss
∆𝑉 (ft.lbf/lb (ft.lbf/lbm (ft.lbf/lbm (ft.lbf/lbm
(ft/dtk) m) ) ) )
Variasi
perulangan
Variasi
perulangan

58
Variasi
perulangan
Variasi
perulangan
Variasi
perulangan
Persamaan Bernouli :
∆𝑉 2 ∆𝑍 𝑔 ∆𝑃
−𝑊𝑓 = + + + 𝐹𝑟𝑖𝑐𝑡𝑖𝑜𝑛 𝐿𝑜𝑠𝑠
2 𝛼 𝑔𝑐 𝑔𝑐 𝜌
Atau dapat ditulis Power pompa (-Wf )= E.Kinetik + E.Potensial + E.Tekanan +
Friction Loss
Diketahui :
Densitas (𝜌) Asam Fosfat 85% = 117.36464 lbm/ft3
∆𝑍 = 2,5 ft
Luas pipa (A) 2 inch. Sch 40 dengan =0.0233 ft2
𝛼 =1
g/gc ~1 lbf/lbm
𝑓𝑡 𝑙𝑏𝑚
gc =32.174 . 𝑙𝑏𝑓
𝑑𝑡𝑘2
𝑓𝑡
g =32 𝑑𝑡𝑘2
𝑙𝑏𝑓
∆𝑃 = 2116,8 𝑓𝑡2
𝑙𝑏𝑓
Total Friction Loss = 0.0125 𝑓𝑡 𝑙𝑏𝑚

Untuk merubah Q menjadi kecepatan Linier :


V = Q/A
Untuk mengubah -Wf ke satuan HP gunakan konversi = -Wf x Q/550
Kerjakan dengan menggunakan Program PASCAL statement perulangan lengkap
dengan Algoritma, Flowchart, script dan hasil run !

59
Jawab:
1. Perbedaan statement FOR DO/DOWN TO, REPEAT-UNTIL, dan WHILE-
DO adalah sebagai berikut.
Perbedaan For do/down to Repeat-Until While-Do
Pengertian Pernyataan for adalah Statement repeat- Statement while-do
dan konstuksi pengulangan until digunakan digunakan untuk me-
Fungsi tanpa kondisi, artinya untuk menangani lakukan perulangan
instruksi-instruksi di pengulangan yang yang belum diketahui
dalam pengulangan di- jumlahnya belum jumlah-nya. Pada
ulangi sejumlah yang pasti. Meski begi - while do tidak akan
di spesifikasikan oleh tu, statement ini melakukan program
pemrogram.Pernyataa tetap memerlukan ,jika kondisi di awal
n ini digunakan untuk perulangan terle- statement sudah ter-
mengulang pernyataan bih dahulu hingga penuhi.
atau satu blok pernya- blok statement
taan sejumlah yang kondisi (until) ti-
ditentukan. Jumlah dak dipenuhi
pengulangan diketahui
atau dapat ditentukan
sebelum eksekusi.
Jenis a. Perulangan positif Jenis dari repeat- While-Do tidak me-
adalah perulangan de- until adalah repeat miliki jenis state-
ngan penghitung dari until tersarang,ya- ment lainnya.
kecil ke besar atau itu perulangan di-
pertambahan positif. mana satu repeat-
Dibentuk mengguna- until berada di
kan pernyataan For- dalam perulangan
To-Do. repeat-until lain-
b. Perulangan negative nya.
adalah perulangan

60
yang perhitungannya
dari besar ke kecil.
Dibentuk menggunakn
pernyataan For..Down
To..To
Konsep Untuk mencacah bebe- Pada repeat-until, Pada struktur while,
perulang- rapa kali pengulangan looping akan aksi akan dihasilkan
an dilakukan, diperlukan berhen-ti ketika berulang kali sela-
sebuah peubah (varia- kondisi bernilai ma kondisi bernilai
bel) dan pencacah (co- TRUE. Sela- in TRUE ,badan pe-
unter). Peubah ini itu, kondisi akan ngulangan tidak a-
nilainya selalu bertam- diuji pada akhir kan dilaksanakan,
bah satu setiap kali perulangan se- yang berarti pengu-
pengulangan dilaku- hingga blok di da- langan selesai. Yang
kan. Jika cacah pengu- lam perulangan diperhatikan adalah
langan sudah menca- akan dijalankan pengulangan harus
pai jumlah yang dispe- minimal satu ka-li berhenti.
sifisikan, maka proses walaupun kondisi
pengulangan berhenti. yang ada masih
FALSE.
Pengece- Ketentuan letak kondi- Seleksi kondisi Seleksi kondisi be-
kan si tidak ditentukan. berada di akhir, rada di awal ,me-
kondisi sehingga state- mungkinkan state-
ment diproses pa- ment dikerjakan pa-
ling sedikit sekali. ling sedikit nol kali.
Batas Pemakaian sesuai Batas dalam re- Memerlukan begin
pembuat program peat-until sudah dan end untuk
jelas sehingga ti- menunjukkan batas
dak memerlukan perulangan.
begin-end.
Tim Dosen, 2019

61
Contoh program dengan menggunakan statement for do adalah program
menampilkan bilangan ganjil antara 1-50 sebagai berikut.
Program bilangan_ganjil;
Uses crt;
Var
B:integer;
Begin
Clrscr;
Write(‘ANGKA : ‘);
For B:=1 to 25 do
Write (2*B-1,’ ‘);
Readln;
End.
Script tersebut bila dieksekusi akan menghasilkan program sebagai berikut.

Contoh program dengan menggunakan statement repeat-until adalah sebagai


berikut.
Program repeat_until;
Uses wincrt;
Var
I : Integer ;
Begin
I : = 0;
repeat
I := I + 1;
write(I);
until I = 5;
End
Script tersebut bila dieksekusi akan menghasilkan program sebagai berikut.

62
Contoh program dengan menggunakan statement while-do adalah sebagai
berikut.
program whiledo;
uses wincrt;
Var
I : Integer;
Begin
I := 0;
While I < 5 Do
Begin
Writeln(I);
I := I + 1;
End;
readln;
End.
Script tersebut bila dieksekusi akan menghasilkan program sebagai berikut.

63
2. a. Algoritma
1) Pilih jenis plug flow yang ingin dicari nilainya.
2) Masukkan nilai Xa dari plug flow yang dipilih.
3) Masukkan nilai ea dari plug flow yang dipilih.
4) Lalu, dengan data tersebut akan dihitung menggunakan rumus :
s:=2*ea*(ea+1)*ln(1-xa);
a:=(sqr(ea))*xa;
t:=(sqr(ea+1))*(xa/(1-xa));
ktorsi1:=s+a+t;
5) Ulangi langkah 1-4 untuk jenis plug flow yang lain.

64
b. Flowchart
Mulai

Masukkan pilihan
1. Plug flow 1
2. Plug flow 2
3. Pug flow 3

Menampilkan
Ya Menghitung perhitungan nilai
Masukkan nilai Xa
If pilihan 1 kτCa0 plug flow
dan ea plug flow 1 kτCa0 plug flow
1
1
Tidak

Menampilkan
Ya Menghitung perhitungan nilai
Masukkan nilai Xa
If pilihan 2 kτCa0 plug flow
dan ea plug flow 2 kτCa0 plug flow
2
1
Tidak

Menampilkan
Ya Menghitung perhitungan nilai
Masukkan nilai Xa
If pilihan 3 kτCa0 plug flow
dan ea plug flow 3 kτCa0 plug flow
3
1
Tidak

Selesai

65
c. Script
program menghitung_plug_flow_orde_2;
uses wincrt;
var ktorsi1,ktorsi2,ktorsi3,pilihan,ea,xa,a,t,s:real;
begin
clrscr;
writeln('===================================================
=======');
writeln('Perhitungan Nilai KtorsiCao pada tiga reaktor plug flow |');
writeln('===================================================
=======');
writeln('Pilihan Plug Flow |');
writeln('1. Plug flow 1 |');
writeln('2. Plug flow 2 |');
writeln('3. Plug flow 3 |');
writeln('===================================================
=======');
write(' Pilih jenis plug flow yang Anda inginkan=');readln(pilihan);
writeln('----------------------------------------------------------');
if pilihan=1 then
begin
write('Masukkan nilai Xa =');readln(xa);
write('Masukkan nilai ea =');readln(ea);
s:=2*ea*(ea+1)*ln(1-xa);
a:=(sqr(ea))*xa;
t:=(sqr(ea+1))*(xa/(1-xa));
ktorsi1:=s+a+t;
writeln('Jadi nilai ktorsi 1 adalah ',ktorsi1:1:4);
writeln('----------------------------------------------------------');
end;
if pilihan=2 then

66
begin
write('Masukkan nilai Xa =');readln(xa);
write('Masukkan nilai ea =');readln(ea);
s:=2*ea*(ea+1)*ln(1-xa);
a:=(sqr(ea))*xa;
t:=(sqr(ea+1))*(xa/(1-xa));
ktorsi2:=s+a+t;
writeln('Jadi nilai ktorsi 2 adalah ',ktorsi2:1:4);
writeln('----------------------------------------------------------');
end;
if pilihan=3 then
begin
write('Masukkan nilai Xa =');readln(xa);
write('Masukkan nilai ea =');readln(ea);
s:=2*ea*(ea+1)*ln(1-xa);
a:=(sqr(ea))*xa;
t:=(sqr(ea+1))*(xa/(1-xa));
ktorsi3:=s+a+t;
writeln('Jadi nilai ktorsi 3 adalah ',ktorsi3:1:4);
writeln('----------------------------------------------------------');
end;
readln;
end.

67
d. Hasil run

68
3. a. Algoritma
1) Masukkan nilai rho, delta Z, a, la, g, gc, ggc,dp,fl,q.
2) Kemudian dari data yang diketahui tersebut akan dihitung nilai kecepatan
linear dengan rumus v=q/la, nilai ek dengan rumus energi kinetik
=(sqr(v))/(2*a*gc), nilai energi potensial dengan rumus ep=(z*ggc), nilai
energi tekanan dengan rumus et=(dp/rho), nilai –wf dengan rumus
wf=ek+ep+et+fl dan nilai wf yang dikonversi ke satuan hp dengan rumus
hp=(wf*q)/550;
3) Dengan persamaan tersebut akan dihasilkan nilai kecepatan linear(V),
energi potensial(Ep), energi kinetic(Ek), energi tekanan(Et), Friction loss
(FL), dan -Wf.

69
b. Flowchart

Mulai

Masukkan nilai rho, delta Z,a,la,g,


gc,ggc,dp,fl,q

Tidak
q<=40

Ya

Menghitung kecepatan linear(V),


energi kinetik(ek),energi
potensial(ep),energi tekanan(et),-wf
dalam satuan HP

Memunculkan nilai kecepatan


linear(V), energi kinetik(ek),energi
potensial(ep),energi tekanan(et),
-wf dalam satuan HP

Selesai

70
c. Script
program perhitungan;
uses wincrt;
var rho,z,a,la,g,gc,ggc,dp,fl,q,v,ek,ep,et,wf,hp:real;
begin
writeln('==================================================
=======');
writeln('Menghitung Besar Power Pompa untuk Memompa Asam Sulfat');

writeln('==================================================
=======');
write('Masukkan nilai rho =');readln(rho);
write('Masukkan nilai delta z =');readln(z);
write('Masukkan nilai a =');readln(a);
write('Masukkan nilai la =');readln(la);
write('Masukkan nilai g =');readln(g);
write('Masukkan nilai gc =');readln(gc);
write('Masukkan nilai ggc =');readln(ggc);
write('Masukkan nilai dp =');readln(dp);
write('Masukkan nilai fl =');readln(fl);
write('Masukkan nilai q =');readln(q);
writeln('Jadi hasil perhitungannya adalah sebagai berikut :');
writeln(' q v e.K e.P e.T F.L h.P');
while q<=40 do
begin
v:=q/la;
ek:=(sqr(v))/(2*a*gc);
ep:=(z*ggc);
et:=(dp/rho);
wf:=ek+ep+et+fl;

71
hp:=(wf*q)/550;
writeln(q:1:3,v:10:3,ek:15:3,ep:10:3,et:10:3,fl:10:3,hp:10:3);
q:=q+5;
end;
readln;
end.

72
d. Hasil run

73
DAFTAR PUSTAKA

Tim Dosen. 2019. “Looping Statement dalam Bahasa Pascal”. Surabaya : UPN
“Veteran” Jawa Timur.

74

Anda mungkin juga menyukai