Anda di halaman 1dari 39

Rumus :

1
V1     D 2  H1
4
1
V2     D 2  H 2
4
V  V2
Kec.Penguapan  1
t
w2
% yield   100%
w1

Buatlah Algoritma, Flowchart, Listing, dan Hasil Run Program menggunakan


pemilihan kondisi If Else (NPM Ganjil) dan Switch Case (NPM Genap)
5. Perhatikan tabel dibawah ini :

Buatlah Algoritma, Flowchart Program, Listing Program, Dan Hasil


Listing Program Dengan Menggunakan Statement Pemilihan Kondisi If
Then Else.

74
Berikan Kesimpulan Tentang Praktikum Yang Telah Dilakukan Dengan
Menggunakan Bahasa Saudara Sendiri. (Tiap Praktikan Wajib Berbeda)

75
JAWABAN
1. Pengertian, fungsi, dan contoh
Nama Pengertian Fungsi Contoh
Abs Abs adalah symbol yang Berfungsi untuk Abs (-y) = y
digunakan untuk menentukan dan
mengambil nilai mutlak mengambil nilai
dari variabelnya. mutlak dari
variabelnya.
Fprintf Fprintf adalah statement Berfungsi untuk fprintf('Pada tahun
output yang sering menampilkan %g pengunjung
digunakan untuk output pada maksimal mencapai
menampilkan output command window %g dengan perhari
pada command window dan menyimpan rerata %f
ataupun menyimpan output dalam menit\n',x,y,z)
output dalam bentuk file. bentuk file.
Sprintf Sprintf adalah kode Berfungsi untuk Sprintf(‘Bilangan
program untuk menggabungkan Bulat : %d’,i)
menggabungkan nilai nilai dan variabel
dan variabel dengan cara dengan mengubah
mengubah formatnya ke format ke dalam
dalam bentuk string. bentuk string.
Num2str Num2str adalah fungsi Berfungsi untukk disp(['Besaran nilai
dalam matlab untuk mengubah angka ke = ',num2str(B),'
mengubah angka ke dalam bentuk satuan'])
dalam format larik atau string.
string.
Syms Syntak syms adalah Berfungsi untuk syms x y z
fungsi simbolik yang mendeklarasikan f=3*x^2+6*y+12*z
sering digunakan karena simbol object atau
lebih sederhana dan variabel.

76
penggunaanya lebih
fokus untuk membuat
objek sejenis variabel.
Diff Fungsi pada matlab yang Berfungsi untuk y=x^2+x;
digunakan untuk melakukan Z=diff(y)
perhitungan turunan differensial atau
matemamatika. melakukan turunan.
Int Fungsi pada matlab yang Berfungsi untuk y=x^2+x;
digunakan dalam melakukan integral Z=int(y)
perhitungan yang pada matlab.
membutuhkan integral.
Subs Fungsi pada matlab yang Berfungsi untuk y=x^2+x;
digunakan dalam melakukan subtitusi subs(y,3)
perhitungan yang dalam perhitungan
membutuhkan subtitusi. pada matlab.
(Patabang, 2016)

77
2. Syntak fprintf adalah syntak output yang memiliki fungsi sama seperti disp.
Namun pada fprintf dilengkapi dengan pengaturan penulisan lebar karakter,
jumlah desimal konversi karakter, ganti baris baru, dan lain-lain. Secara
umum fungsi fprintf dibagi menjadi yaitu konversi karakter dan karakter
pengontrol.
 Konversi Karakter
a. %c digunakan untuk karakter tunggal
b. %d digunakan untuk notasi desimal
c. %s digunakan untuk notasi teks
d. %e digunakan untuk notasi eksponensial
e. %f digunakan untuk notasi titik tetap (fixed point)
 Pengontrol Karakter
a. \b karakter backpase untuk menghapus baris belakang
b. \f penulisan diteruskan dalam baris yang sama
c. \n karakter escape untuk memunculkan baris baru
(Saefulloh, 2019)

78
3. Program Paket Liburan
A. Algoritma
1. Memulai program
2. Memasukkan pilihan paket liburan (pilih)
3. Jika pilih=1, maka
 Memasukkan pilihan liburan (kode)
 Jika kode=a, maka
a. Memasukkan nama pemesan (nama), jenis kelamin (kelamin),
liburan berapa hari (h), kunjungan candi borobudur beropa kali
(c), dan kunjungan pantai parangtritis berapa kali (p).
b. Memproses rumus
ℎ𝑎𝑟𝑖 = ℎ 𝑥 200000
𝑐𝑎𝑛𝑑𝑖 = 𝑐 𝑥 75000
𝑝𝑎𝑛𝑡𝑎𝑖 = 𝑝 𝑥 80000
𝑡𝑜𝑡𝑎𝑙 = ℎ𝑎𝑟𝑖 + 𝑐𝑎𝑛𝑑𝑖 + 𝑝𝑎𝑛𝑡𝑎𝑖
c. Menampilkan nama pemesan (nama), jenis kelamin (kelamin),
biaya inap (hari), biaya kunjungan candi borobudur (candi),
biaya kunjungan pantai parangtritis (pantai), dan total biaya
liburan (total).
 Jika kode=b, maka
a. Memasukkan nama pemesan (nama), jenis kelamin (kelamin),
liburan berapa hari (h), kunjungan kampung warna-warni
berapa kali (k), kunjungan jatim park 3 berapa kali (j), dan
kunjungan air terjun coban raiz berapa kali (air)
b. Memproses rumus
ℎ𝑎𝑟𝑖 = ℎ 𝑥 150000
𝑘𝑎𝑚𝑝𝑢𝑛𝑔 = 𝑘 𝑥 35000
𝑗𝑎𝑡𝑖𝑚 = 𝑗 𝑥 80000
𝑡𝑒𝑟𝑗𝑢𝑛 = 𝑎𝑖𝑟 𝑥 50000
𝑡𝑜𝑡𝑎𝑙 = ℎ𝑎𝑟𝑖 + 𝑘𝑎𝑚𝑝𝑢𝑛𝑔 + 𝑗𝑎𝑡𝑖𝑚 + 𝑡𝑒𝑟𝑗𝑢𝑛

79
c. Menampilkan nama pemesan (nama), jenis kelamin (kelamin),
biaya inap (hari), biaya kampung warna-warni (kampung),
biaya jatim park 3 (jatim), biaya air terjun coban raiz (terjun),
dan total biaya liburan (total)
 Jika pilihan tidak ada maka menampilkan pilihan liburan yang
anda pilih tidak ada
4. Jika pilih=2, maka
 Memasukkan pilihan liburan (kode)
 Jika kode=a, maka
d. Memasukkan nama pemesan (nama), jenis kelamin (kelamin),
liburan berapa hari (h), kunjungan pantai pandawa berapa kali
(pdw), kunjungan pantai kuta berapa kali (p), kunjungan ke
garuda wisnu kencana berapa kali (gwk)
e. Memproses rumus
ℎ𝑎𝑟𝑖 = ℎ 𝑥 750000
𝑝𝑎𝑛𝑑𝑎𝑤𝑎 = 𝑝𝑑𝑤 𝑥 200000
𝑘𝑢𝑡𝑎 = 𝑘𝑡 𝑥 200000
𝑔𝑎𝑟𝑢𝑑𝑎 = 𝑔𝑤𝑘 𝑥 150000
𝑡𝑜𝑡𝑎𝑙 = ℎ𝑎𝑟𝑖 + 𝑝𝑎𝑛𝑑𝑎𝑤𝑎 + 𝑘𝑢𝑡𝑎 + 𝑔𝑎𝑟𝑢𝑑𝑎
f. Menampilkan nama pemesan (nama), jenis kelamin (kelamin),
biaya inap (hari), biaya kunjungan pantai pandawa (pandawa),
biaya kunjungan pantai kuta (kuta), dan biaya kunjungan
Garuda wisnu kencana (garuda), dan total biaya liburan (total)
 Jika kode=b, maka
d. Memasukkan nama pemesan (nama), jenis kelamin (kelamin),
liburan berapa hari (h), kunjungan desa sade berapa kali (d),
kunjungan gili trawangan berapa kali (g), kunjungan ke pantai
selok belanak berapa kali (s)
e. Memproses rumus
ℎ𝑎𝑟𝑖 = ℎ 𝑥 850000
𝑑𝑒𝑠𝑎 = 𝑑 𝑥 150000

80
𝑔𝑖𝑙𝑖 = 𝑔 𝑥 250000
𝑠𝑒𝑙𝑜𝑛𝑔 = 𝑠 𝑥 200000
𝑡𝑜𝑡𝑎𝑙 = ℎ𝑎𝑟𝑖 + 𝑑𝑒𝑠𝑎 + 𝑔𝑖𝑙𝑖 + 𝑠𝑒𝑙𝑜𝑛𝑔
g. Menampilkan nama pemesan (nama), jenis kelamin (kelamin),
biaya inap (hari), biaya kunjungan desa sade (desa), biaya
kunjungan gili trawangan (gili), dan biaya kunjungan pantai
selok belana (selok), dan total biaya liburan (total)
 Jika pilihan tidak ada maka menampilkan pilihan liburan yang
anda pilih tidak ada
5. Jika pilihan pake liburan tidak ada maka menamplikan pilihan paket
liburan yang anda pilih tidak ada
6. Program selesai

81
B. Flowchart

Mulai

Memasukkan
pilihan paket
liburan (pilih)

IYA Memasukkan
Jika pilih=1 pilihan liburan
(kode)

Memasukkan nama pemesan


(nama), jenis kelamin (kelamin),
IYA liburan berapa hari (h),
Jika kode=a
kunjungan candi borobudur
beropa kali (c), dan kunjungan
pantai parangtritis berapa kali (p)

Memproses rumus
hari=h*200000
candi=c*75000
pantai=p*80000
TIDAK TIDAK total=hari+candi+pantai

Menampilkan nama pemesan


(nama), jenis kelamin (kelamin),
biaya inap (hari), biaya
kunjungan candi borobudur
(candi), biaya kunjungan pantai
parangtritis (pantai), dan total
biaya liburan (total).

Memasukkan nama pemesan


(nama), jenis kelamin (kelamin),
liburan berapa hari (h),
IYA
kunjungan kampung warna-
Jika kode=b
warni berapa kali (k), kunjungan
jatim park 3 berapa kali (j), dan
kunjungan air terjun coban raiz
berapa kali (air)

A B C D

82
A B C D

Memproses rumus
hari=h*150000
kampung=k*35000
jatim=j*80000
terjun=air*50000
total=hari+kampung+jatim+terjun

TIDAK TIDAK Menampilkan nama pemesan


(nama), jenis kelamin (kelamin),
biaya inap (hari), biaya kampung
warna-warni (kampung), biaya
jatim park 3 (jatim), biaya air
terjun coban raiz (terjun), dan total
biaya liburan (total)

Menampilkan Liburan
Else yang anda pilih tidak
ada

IYA Memasukkan
Jika pilih=2 pilihan liburan
(kode)
Memasukkan nama pemesan
(nama), jenis kelamin (kelamin),
liburan berapa hari (h),
IYA kunjungan pantai pandawa
Jika kode=a
berapa kali (pdw), kunjungan
pantai kuta berapa kali (p),
kunjungan ke garuda wisnu
kencana berapa kali (gwk)

TIDAK TIDAK
Memproses rumus
hari=h*750000
pandawa=pdw*200000
kuta=kt*200000
garuda=gwk*150000
total=hari+pandawa+kuta+garuda

A B C D

83
A B C D

Menampilkan nama pemesan


(nama), jenis kelamin (kelamin),
biaya inap (hari), biaya kunjungan
pantai pandawa (pandawa), biaya
kunjungan pantai kuta (kuta), dan
biaya kunjungan Garuda wisnu
kencana (garuda), dan total biaya
liburan (total)

Memasukkan nama pemesan


(nama), jenis kelamin (kelamin),
liburan berapa hari (h),
IYA
kunjungan desa sade berapa kali
Jika kode=b
(d), kunjungan gili trawangan
berapa kali (g), kunjungan ke
pantai selok belanak berapa kali
(s)

Memproses rumus
hari=h*850000;
desa=d*150000;
TIDAK gili=g*250000;
selong=s*200000;
total=hari+desa+gili+selong
TIDAK

Menampilkan nama pemesan


(nama), jenis kelamin (kelamin),
biaya inap (hari), biaya kunjungan
desa sade (desa), biaya kunjungan
gili trawangan (gili), dan biaya
kunjungan pantai selok belana
(selok), dan total biaya liburan
(total)

Menampilkan Liburan
Else yang anda pilih tidak
ada

Menampilkan paket
Otherwise Liburan yang anda pilih
tidak ada

Selesai

84
C. Listing Program
clear all;
clc;
disp('================================================
============');
disp(' PROGRAM PAKET LIBURAN');
disp('================================================
============');
disp('1. Paket Liburan Murah ');
disp('2. Paket Liburan Mahal ');
pilih=input('Pilih Paket liburan mana yang anda pilih : ');
switch pilih
case 1
disp('================================================
===');
disp(' PAKET LIBURAN MURAH ');
disp('================================================
====');
disp('a. Liburan ke Yogyakarta');
disp('b. Liburan ke Malang');
kode=input('Pilih ingin liburan ke mana : ','s');
if kode=='a'
disp('------------------------------------------------');
disp(' LIBURAN KE YOGYAKARTA');
disp(' Anda Mendapatkan : ');
disp(' - Menginap Di Hotel Malioboro');
disp(' - Kunjungan ke Candi Borobudur');
disp(' - Kunjungan ke Pantai Parangtritis');
disp(' - Jalan-jalan ke Malioboro');
disp(' - Biaya hotel Rp.200.0000 per hari');
disp('------------------------------------------------');

85
nama=input('Masukkan Nama Pemesan : ','s');
kelamin=input('Masukkan jenis kelamin : ','s');
h=input('Ingin liburan berapa hari : ');
c=input('Ingin ke candi borobudur berapa kali : ');
p=input('Ingin ke pantai parangtritis berapa kali : ');
hari=h*200000;
candi=c*75000;
pantai=p*80000;
total=hari+candi+pantai;
disp('--------------------------------------------------');
disp(' Data Pemesanan ');
disp(['Nama pemesan : ',num2str(nama)]);
disp(['Jenis kelamin : ',num2str(kelamin)]);
disp(['Liburan berapa hari : ',num2str(h),' hari']);
disp(['Biaya inap hotel :Rp. ',num2str(hari)]);
disp(['Biaya ke Candi borobudur :Rp. ',num2str(candi)]);
disp(['Biaya ke Pantai parangtritis :Rp. ',num2str(pantai)]);
disp(['Total biaya :Rp. ',num2str(total)]);
disp('---------------------------------------------------');
elseif kode=='b'
disp('------------------------------------------------');
disp(' LIBURAN KE MALANG');
disp(' Anda Mendapatkan : ');
disp(' - Menginap Di Hotel Niagara');
disp(' - Kunjungan ke Kampung warna-warni');
disp(' - Kunjungan ke Jatim Park 3');
disp(' - Kunjungan ke Air terjun Coban Rais');
disp(' - Biaya hotel Rp.150.0000 per hari');
disp('------------------------------------------------');
nama=input('Masukkan Nama Pemesan : ','s');
kelamin=input('Masukkan jenis kelamin : ','s');

86
h=input('Ingin liburan berapa hari : ');
k=input('Ingin ke Kampung Warna-warni berapa kali : ');
j=input('Ingin ke Jatim Park 3 berapa kali : ');
air=input('Ingin ke air terjun coban raiz berapa kali : ');
hari=h*150000;
kampung=k*35000;
jatim=j*80000;
terjun=air*50000;
total=hari+kampung+jatim+terjun;
disp('--------------------------------------------------');
disp(' Data Pemesanan ');
disp(['Nama pemesan : ',num2str(nama)]);
disp(['Jenis kelamin : ',num2str(kelamin)]);
disp(['Liburan berapa hari : ',num2str(h),' hari']);
disp(['Biaya inap hotel :Rp. ',num2str(hari)]);
disp(['Biaya ke Kampung warna-warni :Rp. ',num2str(kampung)]);
disp(['Biaya ke Jatim Park 3 :Rp. ',num2str(jatim)]);
disp(['Biaya ke Air Terjun Coban Raiz :Rp. ',num2str(terjun)]);
disp(['Total biaya :Rp. ',num2str(total)]);
disp('---------------------------------------------------');
else
disp('Liburan yang anda pilh tidak ada ');
end
case 2
disp('================================================
===');
disp(' PAKET LIBURAN MAHAL ');
disp('================================================
====');
disp('a. Liburan ke Bali');
disp('b. Liburan ke Labuan Bajo');

87
kode=input('Pilih ingin liburan ke mana : ','s');
if kode=='a'
disp('------------------------------------------------');
disp(' LIBURAN KE BALI');
disp(' Anda Mendapatkan : ');
disp(' - Menginap Di Hotel Arjuna');
disp(' - Kunjungan ke Pantai Pandawa');
disp(' - Kunjungan ke Pantai Kuta');
disp(' - Kunjungan ke Garuda Wisnu Kencana');
disp(' - Biaya hotel Rp.750.0000 per hari');
disp('------------------------------------------------');
nama=input('Masukkan Nama Pemesan : ','s');
kelamin=input('Masukkan jenis kelamin : ','s');
h=input('Ingin liburan berapa hari : ');
pdw=input('Ingin ke pantai pandawa berapa kali : ');
kt=input('Ingin ke pantai kuta berapa kali : ');
gwk=input('Ingin ke Garuda Wisnu Kencana berapa kali :');
hari=h*750000;
pandawa=pdw*200000;
kuta=kt*200000;
garuda=gwk*150000;
total=hari+pandawa+kuta+garuda;
disp('--------------------------------------------------');
disp(' Data Pemesanan ');
disp(['Nama pemesan : ',num2str(nama)]);
disp(['Jenis kelamin : ',num2str(kelamin)]);
disp(['Liburan berapa hari : ',num2str(h),' hari']);
disp(['Biaya inap hotel :Rp. ',num2str(hari)]);
disp(['Biaya ke Pantai Pandawa :Rp. ',num2str(pandawa)]);
disp(['Biaya ke Pantai Kuta :Rp. ',num2str(kuta)]);
disp(['Biaya ke Garuda Wisnu Kencana :Rp. ',num2str(garuda)]);

88
disp(['Total biaya :Rp. ',num2str(total)]);
disp('---------------------------------------------------');
elseif kode=='b'
disp('------------------------------------------------');
disp(' LIBURAN KE LOMBOK');
disp(' Anda Mendapatkan : ');
disp(' - Menginap Di Hotel Rinjani');
disp(' - Kunjungan ke Desa Sade');
disp(' - Kunjungan ke Gili Trawangan');
disp(' - Kunjungan ke Pantai Selong Belanak');
disp(' - Biaya hotel Rp.850.0000 per hari');
disp('------------------------------------------------');
nama=input('Masukkan Nama Pemesan : ','s');
kelamin=input('Masukkan jenis kelamin : ','s');
h=input('Ingin liburan berapa hari : ');
d=input('Ingin ke Desa Sade berapa kali : ');
g=input('Ingin ke Gili Trawangan berapa kali : ');
s=input('Ingin ke Pantai Selong Belanak berapa kali : ');
hari=h*850000;
desa=d*150000;
gili=g*250000;
selong=s*200000;
total=hari+desa+gili+selong;
disp('--------------------------------------------------');
disp(' Data Pemesanan ');
disp(['Nama pemesan : ',num2str(nama)]);
disp(['Jenis kelamin : ',num2str(kelamin)]);
disp(['Liburan berapa hari : ',num2str(h),' hari']);
disp(['Biaya inap hotel :Rp. ',num2str(hari)]);
disp(['Biaya ke Desa Sade :Rp. ',num2str(desa)]);
disp(['Biaya ke Gili Trawangan :Rp. ',num2str(gili)]);

89
disp(['Biaya ke Pantai Selong Belanak :Rp. ',num2str(selong)]);
disp(['Total biaya :Rp. ',num2str(total)]);
disp('---------------------------------------------------');
else
disp('Liburan yang anda pilh tidak ada ');
end
otherwise
disp('Paket liburan yang anda pilih tidak ada ');
end

90
D. Hasil Run

91
4. Program perhitungan NaCl
A. Algoritma
1. Memulai program
2. Memasukkan pilihan kondisi NaCl (pilih)
3. Jika pilih=1, maka
a. Memasukkan berat awal (w1), berat akhir (w2), ketinggian awal
(h1), ketinggian akhir (h2), waktu (t), diameter (d), dan massa jenis
(p).
b. Memproses rumus
𝑑𝐻 = ℎ1 − ℎ2
1
𝑣1 = 𝑥 𝜋 𝑥 𝑑 2 𝑥 ℎ1
4
1
𝑣2 = 𝑥 𝜋 𝑥 𝑑 2 𝑥 ℎ2
4
𝑣1 − 𝑣2
𝑘𝑒𝑐 =
𝑡
𝑤2
𝑦𝑖𝑒𝑙𝑑 = 𝑥 100 %
𝑤1
c. Menampilkan perubahan ketinggian (dH), kecepatan awal (v1),
kecepatan akhir (v2). Kecepatan penguapan (kec), dan berapa
persen yield (yield).
4. Jika pilih=2, maka
a. Memasukkan berat awal (w1), berat akhir (w2), ketinggian awal
(h1), ketinggian akhir (h2), waktu (t), diameter (d), dan massa jenis
(p).
b. Memproses rumus
𝑑𝐻 = ℎ1 − ℎ2
1
𝑣1 = 𝑥 𝜋 𝑥 𝑑 2 𝑥 ℎ1
4
1
𝑣2 = 𝑥 𝜋 𝑥 𝑑 2 𝑥 ℎ2
4
𝑣1 − 𝑣2
𝑘𝑒𝑐 =
𝑡

92
𝑤2
𝑦𝑖𝑒𝑙𝑑 = 𝑥 100 %
𝑤1
c. Menampilkan perubahan ketinggian (dH), kecepatan awal (v1),
kecepatan akhir (v2). Kecepatan penguapan (kec), dan berapa
persen yield (yield).
5. Jika pilih=3, maka
a. Memasukkan berat awal (w1), berat akhir (w2), ketinggian awal
(h1), ketinggian akhir (h2), waktu (t), diameter (d), dan massa jenis
(p).
b. Memproses rumus
𝑑𝐻 = ℎ1 − ℎ2
1
𝑥 𝜋 𝑥 𝑑 2 𝑥 ℎ1
𝑣1 =
4
1
𝑣2 = 𝑥 𝜋 𝑥 𝑑 2 𝑥 ℎ2
4
𝑣1 − 𝑣2
𝑘𝑒𝑐 =
𝑡
𝑤2
𝑦𝑖𝑒𝑙𝑑 = 𝑥 100 %
𝑤1
c. Menampilkan perubahan ketinggian (dH), kecepatan awal (v1),
kecepatan akhir (v2). Kecepatan penguapan (kec), dan berapa
persen yield (yield).
6. Jika pilihan tidak ada maka akan menampilihan pilihan yang anda pilih
tidak ada
7. Program selesai

93
B. Flowchart
Mulai

Memasukkan
pilihan kondisi
NaCl (pilih)

Memasukkan berat
awal (w1), berat akhri
IYA (w2), ketinggian awal
Jika pilih=1
(h1), ketinggian akhir
(h2), waktu (t), dan
massa jenis (p)

Memproses rumus
dH=h1-h2
v1=(pi*d^2*h1)/4
v2=(pi*d^2*h2)/4
kec=(v1-v2)/t
yield=(w2/w1)*100
TIDAK
Menampilkan perubahan
ketinggian (dH),
kecepatan awal (v1),
kecepatan akhir (v2).
Kecepatan penguapan
(kec), dan berapa persen
yield (yield).

Memasukkan berat
awal (w1), berat akhri
IYA
(w2), ketinggian awal
Jika pilih=2
(h1), ketinggian akhir
(h2), waktu (t), dan
massa jenis (p)

Memproses rumus
dH=h1-h2
TIDAK v1=(pi*d^2*h1)/4
v2=(pi*d^2*h2)/4
kec=(v1-v2)/t
yield=(w2/w1)*100

A B C

94
A B C

Menampilkan perubahan
ketinggian (dH),
kecepatan awal (v1),
kecepatan akhir (v2).
Kecepatan penguapan
(kec), dan berapa persen
yield (yield).

Memasukkan berat
awal (w1), berat akhri
IYA (w2), ketinggian awal
Jika pilih=3
(h1), ketinggian akhir
(h2), waktu (t), dan
massa jenis (p)

Memproses rumus
dH=h1-h2
v1=(pi*d^2*h1)/4
v2=(pi*d^2*h2)/4
kec=(v1-v2)/t
TIDAK yield=(w2/w1)*100

Menampilkan perubahan
ketinggian (dH),
kecepatan awal (v1),
kecepatan akhir (v2).
Kecepatan penguapan
(kec), dan berapa persen
yield (yield).

Menampilkan
Otherwise pilihan anda tidak
ada

Selsai

95
C. Listing Program
clear all;
clc;
disp('======================================================
==');
disp('PROGRAM PERHITUNGAN KECEPATAN PENGUAPAN DAN
%YIELD NaCl');
disp('======================================================
==');
disp('1. Kondisi NaCl pertama');
disp('2. Kondisi NaCl kedua');
disp('3. Kondisi NaCl ketiga');
pilih=input('Pilih kondisi NaCl yang akan dihitung : ');
switch pilih
case 1
disp('===================================================');
disp(' PERHITUNGAN KONDISI NaCl PERTAMA');
w1=input('Masukkan berat awal : ');
w2=input('Masukkan berat akhir : ');
h1=input('masukkan ketinggian awal : ');
h2=input('Masukkan ketinggian akhir : ');
t=input('Masukkan waktu (menit) : ');
d=input('Masukkan diameter : ');
p=input('Masukkan massa jenis : ');
disp('---------------------------------------------------');
dH=h1-h2;
v1=(pi*d^2*h1)/4;
v2=(pi*d^2*h2)/4;
kec=(v1-v2)/t;
yield=(w2/w1)*100;
disp(['Perubahan ketinggian : ',num2str(dH),' cm']);

96
disp(['Kecepatan awal : ',num2str(v1),' cm/s']);
disp(['Kecepatan akhir : ',num2str(v2),' cm/s']);
disp(['Kecepatan penguapan : ',num2str(kec),' cm/s']);
disp(['%yield : ',num2str(yield),' %']);
disp('===================================================');
case 2
disp('===================================================');
disp(' PERHITUNGAN KONDISI NaCl KEDUA');
w1=input('Masukkan berat awal : ');
w2=input('Masukkan berat akhir : ');
h1=input('masukkan ketinggian awal : ');
h2=input('Masukkan ketinggian akhir : ');
t=input('Masukkan waktu (menit) : ');
d=input('Masukkan diameter : ');
p=input('Masukkan massa jenis : ');
disp('---------------------------------------------------');
dH=h1-h2;
v1=(pi*d^2*h1)/4;
v2=(pi*d^2*h2)/4;
kec=(v1-v2)/t;
yield=(w2/w1)*100;
disp(['Perubahan ketinggian : ',num2str(dH),' cm']);
disp(['Kecepatan awal : ',num2str(v1),' cm/s']);
disp(['Kecepatan akhir : ',num2str(v2),' cm/s']);
disp(['Kecepatan penguapan : ',num2str(kec),' cm/s']);
disp(['%yield : ',num2str(yield),' %']);
disp('===================================================');
case 3
disp('===================================================');
disp(' PERHITUNGAN KONDISI NaCl KETIGA');
w1=input('Masukkan berat awal : ');

97
w2=input('Masukkan berat akhir : ');
h1=input('masukkan ketinggian awal : ');
h2=input('Masukkan ketinggian akhir : ');
t=input('Masukkan waktu (menit) : ');
d=input('Masukkan diameter : ');
p=input('Masukkan massa jenis : ');
disp('---------------------------------------------------');
dH=h1-h2;
v1=(pi*d^2*h1)/4;
v2=(pi*d^2*h2)/4;
kec=(v1-v2)/t;
yield=(w2/w1)*100;
disp(['Perubahan ketinggian : ',num2str(dH),' cm']);
disp(['Kecepatan awal : ',num2str(v1),' cm/s']);
disp(['Kecepatan akhir : ',num2str(v2),' cm/s']);
disp(['Kecepatan penguapan : ',num2str(kec),' cm/s']);
disp(['%yield : ',num2str(yield),' %']);
disp('====================================================');
otherwise
disp('Pilihan anda tidak ada');
end

98
D. Hasil Run

99
100
5. Program Perhitungan Kalor Air
A. Algoritma
1. Memulai program
2. Memasukkan besar suhu akhir (T2)
3. Jika T2=0, maka
a. Masukkan massa (M) dan kalor jenis lebur (L)
b. Memproses rumus
𝑄=𝑀𝑥𝐿
c. Menampilkan besar kalor (Q)
4. Jika T2<=99, maka
a. Masukkan massa (M) dan kalor jenis lebur (L)
b. Memproses rumus
𝑄=𝑀𝑥𝐿
c. Menampilkan besar kalor (Q)
d. Masukkan besar suhu awal (T1)
e. Jika T1<T2, maka
- Masukkan massa (M) dan kalor jenis (C)
- Memproses rumus
𝑑𝑇 = 𝑇2 − 𝑇1
𝑄2 = 𝑀 𝑥 𝐶 𝑥 𝑑𝑇
- Menampilkan besar kalor (Q2)
f. Jika T1>T2, maka
- Masukkan massa (M) dan kalor jenis (C)
- Memproses rumus
𝑑𝑇 = 𝑇2 − 𝑇1
𝑄2 = 𝑀 𝑥 𝐶 𝑥 𝑎𝑏𝑠(𝑑𝑇)
- Menampilkan besar kalor (Q2)
5. Jika T2<=100, maka
a. Masukkan massa (M) dan kalor jenis lebur (L)
b. Memproses rumus
𝑄=𝑀𝑥𝐿

101
c. Menampilkan besar kalor (Q)
d. Masukkan massa (M) dan kalor jenis uap (U)
e. Memproses rumus
𝑄=𝑀𝑥𝑈
f. Menampilkan besar kalor (Q3)
g. Masukkan besar suhu awal (T1)
h. Jika T1<T2, maka
- Masukkan massa (M) dan kalor jenis (C)
- Memproses rumus
𝑑𝑇 = 𝑇2 − 𝑇1
𝑄2 = 𝑀 𝑥 𝐶 𝑥 𝑑𝑇
- Menampilkan besar kalor (Q2)
i. Jika T1>T2, maka
- Masukkan massa (M) dan kalor jenis (C)
- Memproses rumus
𝑑𝑇 = 𝑇2 − 𝑇1
𝑄2 = 𝑀 𝑥 𝐶 𝑥 𝑎𝑏𝑠(𝑑𝑇)
- Menampilkan besar kalor (Q2)
6. Jika pilihan tidak ada maka menampilkan rentang suhu yang anda pilih
tidak ada
7. Program selesai

102
B. Flowchart

Mulai

Masukkan besar
suhu akhir (T2)

Masukkan
IYA massa (M) dan
Jika T2=0
kalor jenis lebur
(L)

Memposes rumus
Q=MxL
TIDAK

Menampilkan
besar kalor (Q)

Masukkan
IYA massa (M) dan
Jika T2<=99
kalor jenis lebur
(L)

Memposes rumus
Q=MxL

Menampilkan
TIDAK besar kalor (Q)

Masukkan besar
suhu awal (T1)

A B C

103
A B C

IYA Masukkan
Jika T1<T2 massa (M) dan
kalor jenis (C)

Memposes rumus
dT= T2 – T1
Q2= M x C x dT
TIDAK

Menampilkan
besar kalor (Q2)

TIDAK Masukkan
IYA
Jika T1>T2 massa (M) dan
kalor jenis (C)

Memposes rumus
dT= T2 – T1
Q2 = M x C x abs(dT)

TIDAK

Menampilkan
besar kalor (Q2)

Masukkan
IYA massa (M) dan
Jika T2<=100
kalor jenis lebur
(L)

Memposes rumus
Q=MxL

TIDAK

Menampilkan
besar kalor (Q)

D E F

104
D E F

Masukkan
massa (M) dan
kalor jenis uap
(U)

Memposes rumus
Q=MxU

Menampilkan
besar kalor (Q3)

Masukkan besar
suhu awal (T1)
TIDAK

IYA Masukkan
Jika T1<T2 massa (M) dan
kalor jenis (C)

Memposes rumus
dT= T2 – T1
Q2 = M x C x dT
TIDAK

Menampilkan
besar kalor (Q2)

IYA Masukkan
Jika T1>T2 massa (M) dan
kalor jenis (C)

Memposes rumus
dT= T2 – T1
TIDAK Q2 = M x C x abs(dT)

G H I J

105
G H I J

Menampilkan
besar kalor (Q2)

TIDAK
Menampilkan
rentang suhu
Else
yang anda pilih
tidak ada

Selesai

106
C. Listing program
clear all;
clc;
disp('==============================================');
disp(' PENENTUAN KALOR AIR');
disp('==============================================');
disp('1. Suhu Akhir = 0');
disp('2. 0 < Suhu Akhir <=99' );
disp('3. 99 < Suhu Akhir <=100');
T2=input('Masukkan Suhu Akhir yang didapatkan = ');
disp('----------------------------------------------');
if T2==0
M=input('Masukkan massa = ');
L=input('Masukkan kalor jenis lebur = ');
Q=M*L;
disp(['hasil kalor = ',num2str(Q),' joule']);
disp('-------------------------------------------');
elseif T2<=99
disp(' SUHU <=99 ');
disp('===Menghitung Q1===');
M=input('masukkan massa = ');
L=input('masukkan kalor lebur = ');
Q1=M*L;
disp(['Hasil Kalor (Q1)= ',num2str(Q1),' joule']);
disp(' ');
disp('===Menghitung Q2===');
T1=input('masukkan T1=');
disp(['Dengan suhu akhir sebesar ',num2str(T2)]);
disp('==============================================');
if T1<T2
disp(' T1<T2');

107
dT=T2-T1;
M=input('Masukkan massa = ');
C=input('Masukkan kalor jenis = ');
Q2=M*C*dT;
disp(['hasil kalor (Q2) = ',num2str(Q2),' joule']);
disp('-----------------------------------------');
elseif T2<T1
disp(' T2<T1');
dT=T2-T1;
M=input('masukkan massa = ');
C=input('masukkan kalor jenis = ');
Q2=M*C*abs(dT);
disp(['hasil kalor (Q2) = ',num2str(Q2),' joule']);
disp('-------------------------------------------');
end
elseif T2<=100
disp(' 99 < Suhu Akhir <= 100');
disp('===Menghitung Q1====');
M=input('masukkan massa = ');
L=input('masukkan kalor jenis lebur = ');
Q=M*L;
disp(['Hasil kalor (Q1) = ',num2str(Q),' joule']);
disp(' ');
disp('===Menghitung Q3===');
m=input('masukkan massa = ');
U=input('masukkan kalor jenis uap = ');
Q3=m*U;
disp(['Hasil kalor (Q3) = ',num2str(Q3),' joule']);
disp(' ');
disp('===Menghitung Q2===');
T1=input('masukkan T1 = ');

108
disp(['Dengan suhu akhir sebesar ',num2str(T2)]);
disp('=============================================');
if T1<T2
disp(' T1<T1');
dT=T2-T1;
M=input('masukkan massa = ');
C=input('masukkan kalor jenis = ');
Q2=M*C*dT;
disp(['hasil kalor (Q2) = ',num2str(Q2),' joule']);
disp('-----------------------------------------');
elseif T2<T1
disp(' T2<T1');
dT=T2-T1;
M=input('masukkan massa = ');
C=input('masukkan kalor jenis = ');
Q2=M*C*abs(dT);
disp(['hasil kalor (Q2) = ',num2str(Q2),' joule']);
disp('------------------------------------------');
end
else
disp('Rentang suhu yang anda pilih tidak ada');
end

109
D. Hasil Run

110
Simpulan :
Jadi penentuan kalor atau panas dipengaruhi oleh suhu zat cair dan kalor jenis
tersebut, kalor jenis setiap keadaan zat itu berbeda beda dan semakin besar suhu
zat tersebut maka kalor yang dihasilkan juga akan semakin besar begitupun
sebaliknya semakin kecil suhu zat maka kalor yang dihasilkan juga akan semakin
kecil.

111
DAFTAR PUSTAKA

Patabang, Simon. 2016.” Contoh Penggunaan Perintah Masukan dan Keluaran


Pada Program Matlab’’.(https://spatabang.blogspot.com/2016/12/contoh-
penggunaan-perintah-masukan-dan.html ). Diakses pada tanggal 29
November 2020 pukul 19.00 WIB.
Saefulloh, Wahyu. 2019.” Input dan Output Data pada Makalah ”.
(https://browsinau.blogspot.com/2019/01/input-dan-output-data-
matlab.html?m=1). Diakses pada tanggal 29 November 2020 pukul 21.00
WIB.

112

Anda mungkin juga menyukai