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 :
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 𝑓𝑡 𝑙𝑏𝑚
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.
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
Tidak
q<=40
Ya
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