FAKULTAS TEKNIK
UPN “VETERAN” JAWA TIMUR Nama : MUZDALIFAH
NPM/Semester : 19031010027/I
Praktikum : PEMROGRAMAN KOMPUTER Sesi : VI
Percobaan : LOOPING STATEMENT DALAM Paralel :A
BAHASA PASCAL
SOAL:
1. Jelaskan secara detail tentang statement perulangan!
2. Buat program serta Flowchart dan hasil runnya untuk menyelesaikan
permasalahan dibawah ini
Sebuah fluida mengalir pada sebuah pipa dengan luas penampang 0,06 ft2
Ketentuan :
• ∆P=0+interval
ρ= Densitas Hidrogen Peroksida untuk NPM Ganjil, Asam Phospat
Untuk NPM Genap
• ∆Ek = npm*100/2000+Interval
• ∆Ep = 0,15+interval*2
• v = (∆Ek/(2*gc*α))^0,5
∆P g ∆V2
• -Wf = + ∆Z + + Σhf
ρ gc 2 α gc
• Σhf = (∆Ep+∆Ek+∆P/ρ)/10
• m=vxAxρ
• Power Pompa = −Wf x m
52
Power Pompa rata−rata
• Hp= 550
53
JAWABAN :
1. Perulangan (loop) merupakan bentuk yang sering ditemui dalam suatu
program aplikasi. Hampir setiap program yang kompleks mutlak
memerlukan perulangan dan percabangan. Tujuan perulangan disini adalah
untuk mengulang statement berulang kali sesuai dengan jumlah yang
ditentukan pemakai. Pengulangan dapat dilakukan sejumlah kali, atau
sampai kondisi berhenti dan pengulangan tercapai. Dalam bahasa pascal,
dikenal dengan tiga macam perulangan, yakni : F0R, WHILE-DO, dan
REPEAT…. UNTIL.
a. Statement For
Struktur perulangan for biasa digunakan untuk mengulang suatu
proses yang telah diketahui jumlah perulangannya. Dari segi
penulisannya, struktur perulangan for tampaknya lebih efisien karena
susunannya lebih simpel dan sederhana. Pernyataan for digunakan untuk
melakukan looping. Pada umumnya looping yang dilakukan oleh for
telah diketahui batas awal, syarat looping dan perubahannya. Selama
kondisi terpenuhi, maka pernyataan akan terus dieksekusi.
b. Statement While-Do
Statement while-do digunakan untuk melakukan perulangan yang
belum diketahui jumlahnya. Pada while-do tidak akan melalukan
program, jika kondisi di awal statement sudah tidak terpenuhi. Pada
struktur while, aksi akan dilaksanakan berulang kali selama kondisi
bernilai true. Jika kondisi bernilai false, badan pengulangan tidak akan
dilaksanakan yang berarti pengulangan selesai.
c. Repeat Until
Adalah Kebalikan dari DO WHILE. Until akan mengulangi suatu
perintah (instruksi) selama kondisi yang dibandingkan tidak memenuhi
syarat (bernilai FALSE) dan akan berhenti apabila Kondisinya
memenuhi syarat (bernilai TRUE).
54
2. ALGORITMA
1. Mulai
2. Menetapkan
a. Alfa = 1
b. Rho = 90.52054
c. g = 32
d. gc = 32.174
e. npm = 27
3. Input Data Perhitungan ∆𝑃 , ∆𝐸𝑘 , ∆𝐸𝑝
4. Perulangan while ∆𝐸𝑝<=4 do
5. Proses Perhitungan
a. Menghitung A dengan rumus :
A=Ax1
v = (∆Ek/(2*gc*α))^0,5
∆𝑃
c. Menghitung dengan rumus :
𝜌
∆𝑃
= ∆𝑃 / 𝜌
𝜌
∆Ek =npm*100/2000+Interval
∆Ep = 0,15+interval*2
55
f. Mengitung ∑hf dengan rumus :
Σhf = (∆Ep+∆Ek+∆P/ρ)/10
∆P g ∆V2
-Wf = + ∆Z + + Σhf
ρ gc 2 α gc
56
FLOWCHART
Mulai
Input data
perhitungan
dP,dEk,dEp
TIDAK
dP<=4
YA
Proses perhitungan
nilai A,v,dP/
rho,dEk,dEp, hf,W
f,Hp
Menampikan
hasil
perhitungan
Selesai
57
SCRIPT
program fluida_pada_sebuah_pipa;
uses crt;
var
i:integer;
v,A,interval,dP,dP_per_rho,d_Ek,d_Ep,s_hf,wf,m,power_pompa,hp:real;
const
rho=90.5204;
g=32;
gc=32.174;
alpha=1;
npm=27;
begin
clrscr;
A:=0.06;
writeln('luas penampang: ',A:4:2);
interval:=0.25;
writeln('interval : ',interval:4:2);
dP:=0;
writeln('delta P : ',dP:4:3);
d_Ek:=npm*100/2000;
writeln('delta Ek : ',d_Ek:4:3);
d_Ep:=0.15;
writeln('delta Ep : ',d_Ep:4:3);
writeln(' A v dP_per_rho d_Ek d_Ep s_hf wf hp');
while d_Ep<=4 do
begin
A:=1*A;
v:=exp((0.5)*(d_Ek/(2*gc*a)));
dP:=dP+interval;
dP_per_rho:=dP/rho;
58
d_Ek:=d_Ek+interval;
d_Ep:=d_Ep+interval*2;
s_hf:=(d_Ep+d_Ek+dP_per_rho)/10;
wf:=dP_per_rho+d_Ep+d_Ek+s_hf;
m:=v*A*rho;
power_pompa:=wf*m;
hp:=power_pompa/550;
writeln(A:10:2,v:10:3,dP_per_rho:10:3,d_Ek:10:2,d_Ep:10:2,s_hf:10:3,wf:10:3,h
p:10:3);
end;
readln;
end.
59
HASIL RUN
60
3. ALGORITMA
1. Mulai
2. Input bilangan
3. Perulangan i=1 to j do
4. Jika
a. j mod i=0
• Menampilkan bukan bilangan prima
• Jika j mod i≠ 0, maka menampilkan merupakan bilangan prima
5. Selesai
61
FLOWCHART
Mulai
Input bilangan
Perulangan for
i=1 to j do
IYA
Menampilkan
Menampilkan
If j mod i=0 bukan bilangan
hasil
prima
TIDAK
Menampilkan
merupakan
bilangan prima
Selesai
62
SCRIPT
program bilangan_prima;
uses crt;
var
n,i,j,x:integer;
begin
clrscr;
write('input bilangan = ');readln(n);
for j:=1 to n do
begin
x:=0;
for i:=1 to j do
begin
if (j mod i=0) then
x:=x+1;
end;
if (x=2) then writeln(j,' merupakan bilangan prima')
else writeln(j,' bukan bilangan prima');
end;
readln;
end.
63
HASIL RUN
64