Puji syukur kami panjatkan kepada Tuhan Yang Maha Esa karena berkat rahmat dan
hidayah-Nya kami dapat menyelesaikan Laporan Praktikum Algoritma dan Pemrograman
dengan baik dan lancar. Laporan ini kami susun sebagai tugas akhir setelah mengikuti
Praktikum Algoritma dan Pemrograman Semester Genap Tahun Ajaran 2022/2023.
Ucapan terima kasih kami sampaikan kepada:
1. Bapak Sugiono, ST., MT., Ph.D. selaku Ketua Departemen Teknik Industri Fakultas
Teknik Universitas Brawijaya.
2. Bapak Ir. Lalu Tri Wijaya Nata Kusuma, ST., MT., Ph.D. selaku Ketua Jurusan
Sarjana Teknik Industri Fakultas Teknik Universitas Brawijaya.
3. Bapak Angga Fanani, ST., MT., selaku Kepala Laboratorium Optimasi, Sistem
Informasi, dan Pendukung Keputusan Departemen Teknik Industri Fakultas Teknik
Universitas Brawijaya.
4. Bapak Angga Fanani, ST., MT., selaku Dosen Pembimbing Praktikum Algoritma dan
Pemrograman Semester Genap Tahun Ajaran 2022/2023 Departemen Teknik Industri
Fakultas Teknik Universitas Brawijaya.
5. Asisten Laboratorium Optimasi, Sistem Informasi, dan Pendukung Keputusan
Departemen Teknik Industri Fakultas Teknik Universitas Brawijaya.
Penulis menyadari bahwa masih banyak kekurangan dan kesalahan dalam penyusunan
laporan praktikum ini. Oleh karena itu, kritik dan saran sangat diharapkan demi kelancaran
pada penyusunan laporan praktikum berikutnya. Semoga laporan praktikum ini dapat
bermanfaat bagi pembaca.
Penulis
DAFTAR ISI
KATA PENGANTAR..........................................................................................................1
DAFTAR GAMBAR............................................................................................................5
DAFTAR LAMPIRAN........................................................................................................7
BAB I GAMBARAN SISTEM............................................................................................9
1.1 DESKRIPSI STUDI KASUS..................................................................................9
1.2 TUJUAN................................................................................................................10
1.3 MANFAAT...........................................................................................................10
1.4 BATASAN............................................................................................................11
1.5 ASUMSI................................................................................................................11
BAB II RANCANGAN PROGRAM................................................................................13
2.1. ALGORITMA.......................................................................................................13
2.2. FLOWCHART........................................................................................................14
2.3. RANCANGAN PROGRAM.................................................................................15
BAB III DESAIN PROGRAM..........................................................................................18
3.1 LISTING CODE PROGRAM................................................................................18
3.1.1 DESICION......................................................................................................24
3.1.2 LOOPING......................................................................................................27
3.1.3 MODULE dan LIBRARY................................................................................28
3.2 OUTPUT PROGRAM...........................................................................................29
3.2.1 COMMAND LINE INTERFACE.................................................................30
3.2.2 GRAPHICAL USER INTERFACE...............................................................33
3.3 TESTING..............................................................................................................37
3.3.1 VERIVIKASI.................................................................................................38
3.3.2 VALIDASI.....................................................................................................40
Gambar 3. 33 Output dari Sistem yang akan divalidasi.................................................41
3.4 ANALISIS RANCANGAN SISTEM...................................................................42
BAB IV................................................................................................................................45
PENUTUP...........................................................................................................................45
4.1 KESIMPULAN..........................................................................................................45
4.2 SARAN......................................................................................................................45
DAFTAR PUSTAKA.........................................................................................................47
LAMPIRAN........................................................................................................................48
2
DAFTAR GAMBA
R
Gambar 2. 1 Flowchart Penentuan Komposisi Pencampuran Warna untuk Produksi Cat
PT Losik Paint..................................................................................................................11
Gambar 2. 2 Decomposition Tree Diagram...................................................................13
Gambar 3. 1 Flowchart Sistem Login............................................................................14
Gambar 3. 2 Flowchart menampilkan tabel warna........................................................15
Gambar 3. 3 Flowchart input nama baru........................................................................16
Gambar 3. 4 Input warna yang dihitung.........................................................................17
Gambar 3. 5 Flowchart menghitung komposisi warna..................................................18
Gambar 3. 6 Menampilkan grafik lingkaran proporsi....................................................19
Gambar 3. 7 Flowchart menampilkan daftar komposisi warna.....................................20
Gambar 3. 8 Flowchart untuk decision pada proses login.............................................21
Gambar 3. 9 Flowchart untuk decision pada tambah warna..........................................22
Gambar 3. 10 Flowchart untuk decision validasi komposisi warna...............................23
Gambar 3. 11 Flowchart untuk penggunaaan module dan library.................................25
Gambar 3. 12 Output Login Berhasil..............................................................................26
Gambar 3. 13 Output Login Gagal.................................................................................26
Gambar 3. 14 Output Halaman Utama...........................................................................27
Gambar 3. 15 Output Hitung Komposisi Warna............................................................28
Gambar 3. 16 Output Tampilan Grafik..........................................................................28
Gambar 3. 17 Output Daftar Warna Setelah Tambah Warna Baru................................29
Gambar 3. 18 Output Keluar Program............................................................................29
Gambar 3. 19 Output Halaman Login............................................................................30
Gambar 3. 20 Output Login Gagal.................................................................................30
Gambar 3. 21 Output Halaman Utama...........................................................................31
Gambar 3. 22 Output Memasukkan Warna Baru Beserta Komposisinya......................31
Gambar 3. 23 Output Notifikasi Setelah Warna Berhasil DItambahkan........................32
Gambar 3. 24 Output Tabel Daftar Warna Setelah Ada Warna Baru............................32
Gambar 3. 25 Output Memilih Warna dan Ukuran........................................................32
Gambar 3. 26 Output Hasil Perhitungan Komposisi Warna..........................................33
Gambar 3. 27 Output Grafik Presentase Warna.............................................................33
Gambar 3. 28 Output Tombol Keluar Program..............................................................33
Gambar 3. 29 Flowchart Login.......................................................................................34
Gambar 3. 30 Algoritma Program..................................................................................35
Gambar 3. 31 Output Login Error..................................................................................36
Gambar 3. 32 Output Login Berhasil..............................................................................36
3
Gambar 3. 33 Output dari Sistem yang akan divalidasi.................................................37
DAFTAR TABE
L
Tabel 1.1 Komposisi Pencampuran Warna...........................................................................6
Tabel 2. 1 Kebutuhan untuk Program..................................................................................13
Tabel 3. 1 Komposisi Warna...............................................................................................38
4
DAFTAR LAMPIRAN
Lampiran 1. Flowchart Program Sistem Penentuan Komposisi Pencampuran Warna untuk
Produksi Cat pada LOSIK Paint
5
BAB I
GAMBARAN SISTEM
Pada bab 1 akan dibahas mengenai deskripsi dari studi kasus yang diberikan. Selain itu
juga akan dibahas mengenai tujuan pembuatan program, manfaat pembuatan program,
batasan pembuatan program, beserta asumsi yang mungkin terjadi saat pembuatan
program.
Proses produksi cat di PT Losik Paint sudah dilakukan dengan mesin. Namun, untuk
pendataan warna masih dilakukan secara manual oleh product analyst. Diperlukan
program yang dapat membantu product analyst melakukan pengecekan komposisi
pencampuran warna dengan cepat untuk menghasilkan warna yang sesuai berdasarkan
daftar warna yang tersedia. Hasil dari program tersebut berupa warna yang dibutuhkan dan
komposisi setiap warna. Program yang dibuat juga dapat menambahkan warna baru dan
menampilkan grafik lingkaran yang menunjukkan proporsi tiap warna yang dipilih. Sistem
login dibutuhkan untuk pengaksesan program karena mencakup data perusahaan. Untuk
data input yang diperlukan di program ini adalah warna, ukuran cat, serta persentasi
komposisi warna. Output yang dihasilkan berupa komposisi warna yang dibutuhkan (ml),
hasil warna, beserta grafik lingkaran.
6
Berdasarkan informasi di atas, program yang digunakan dalam produksi cat di PT
Losik Paint memiliki beberapa ketentuan yaitu.
1. Proses login hanya bisa dilakukan tiga kali, jika lebih dari tiga kali program akan
diakhiri.
2. Proses input meliputi memasukkan nama warna cat baru, memasukkan persentase
komposisi warna baru, memasukkan nama warna yang akan dihitung, dan memilih
ukuran cat.
3. Proses dalam program meliputi menambahkan warna baru dan menghitung komposisi
warna.
4. Proses output meliputi menampilkan komposisi warna yang dibutuhkan, menampilkan
hasil warna, dan menampilkan grafik lingkaran proporsi setiap warna.
1.2 TUJUAN
Tujuan merupakan pengidentifikasian atau penggambaran suatu konsep untuk
menjelaskan atau memprediksi suatu situasi atau solusi untuk suatu situasi yang
mengindikasikan suatu jenis studi yang akan dilakukan (Beckingham, 1974). Terdapat
beberapa tujuan dibuatnya program penentuan komposisi pencampuran warna untuk
produksi cat pada PT LOSIK Paint, yaitu.
1. Membuat algoritma deskriptif dan flowchart dari program penentuan komposisi
pencampuran warna untuk produksi cat PT LOSIK Paint studi kayang sudah tertera.
2. Membuat suatu program penentuan komposisi pencampuran warna untuk produksi cat
PT LOSIK Paint atau pengaplikasian dari sebuah algoritma deskriptif dan flowchart
yang telah dibuat untuk menerjemahkan kepada user sehingga mudah digunakan.
3. Memvisualisasikan diagram lingkaran untuk mengetahui proporsi komposisi warna
1.3 MANFAAT
Manfaat adalah suatu hal yang dilakukan untuk mencapai suatu kegunaan atau
keuntungan. Manfaat dari sistem yang dibuat adalah untuk memudahkan pengecekan
komposisi pencampuran warna secara manual. Terdapat beberapa manfaat dibuatnya
program penentuan komposisi pencampuran warna untuk produksi cat pada PT LOSIK
Paint, yaitu.
1. Mampu membuat algoritma deskriptif dan flowchart dari dari program penentuan
komposisi pencampuran warna untuk produksi cat PT LOSIK Paint.
7
2. Mampu membuat sebuah program atau pengaplikasian dari suatu algoritma dan
flowchart.
3. Dapat menampilkan diagram lingkaran untuk mengetahui proporsi komposisi warna.
1.4 BATASAN
Pembatasan suatu masalah digunakan untuk menghindari adanya penyimpangan
maupun pelebaran pokok masalah agar penelitian tersebut lebih terarah dan memudahkan
dalam pembahasan sehingga tujuan penelitian akan tercapai. Beberapa batasan masalah
dalam program penentuan komposisi pencampuran warna untuk produksi cat PT Losik
Paint sebagai berikut.
1. Warna baru hanya dapat dihasilkan dengan komposisi warna primer yang disediakan.
2. Ukuran cat yang dihasilkan setelah membuat dan mencampurkan warna hanya terdiri
dari dua ukuran yaitu 2,5 L dan 5 L.
1.5 ASUMSI
Asumsi atau anggapan dasar ini merupakan suatu gambaran sangkaan, perkiraan, satu
pendapat atau kesimpulan sementara, atau suatu teori sementara yang belum dibuktikan.
Menurut pendapat Winarko Surakhman sebagaimana dikutip oleh Suharsimi Arikunto
dalam buku Prosedur Penelitian Suatu Pendekatan Praktik, bahwa asumsi atau anggapan
dasar adalah sebuah titik tolak pemikiran yang kebenarannya diterima oleh penyelidik.
Berdasarkan dari pengertian asumsi di atas, maka berikut asumsi yang dapat
dikemukakan berdasarkan pembuatan program PT LOSIK Paint.
1. Data yang digunakan pada program PT Losik Paint sudah cukup untuk menjalankan
seluruh rangkaian program sehingga menghasilkan output yang diinginkan.
2. Jumlah mililiter masing-masing komposisi warna dipengaruhi oleh persentase
komposisi warna berdasarkan data yang telah dimasukkan kemudian dikonversi
menjadi kebutuhan mililiter cat yang diperlukan dalam bentuk keluaran program.
8
(halaman ini sengaja dikosongkan)
9
BAB II
RANCANGAN PROGRAM
Pada bab 2 ini akan dibahas mengenai algoritma dan flowchart yang dibuat
berdasarkan studi kasus yang telah diberikan. Selain itu, juga akan dibahas mengenai
rancangan program yang telah dibuat beserta fungsinya.
2.1. ALGORITMA
Algoritma merupakan urutan langkah-langkah terperinci yang logis dan dibutuhkan
untuk menyelesaikan sebuah permasalahan (Rahman, 2016). Algoritma memiliki awal dan
akhir, serta harus berhenti setelah mengerjakan serangkaian tugas. Setiap Langkah harus
didefinisikan secara tepat sehingga tidak memiliki arti ganda. Dalam menuliskan
algoritma, terdapat 3 cara, yaitu penulisan algoritma menggunakan bahasa, menggunakan
grafik yaitu flowchart, dan juga menggunakan bahasa kode semu tertentu yaitu
pseudocode.
Tidak semua urutan langkah penyelesaian yang logis dapat disebut sebagai algoritma.
Menurut Donald E. Knuth (1998), Algoritma mempunyai lima ciri penting yang meliputi:
1. Input (Masukan), suatu algoritma harus memiliki nol atau lebih input.
2. Output (Keluaran), suatu algoritma harus memiliki satu atau lebih output.
3. Finiteness (Keterbatasan), algoritma harus terjamin dapat berhenti setelah melakukan
sejumlah langkah proses.
4. Definiteness (Kepastian), Setiap baris algoritma harus pasti dan tidak menimbulkan
makna ganda (ambiguous), sehingga memberikan output yang sesuai dengan yang
diharapkan oleh pengguna
5. Effectiveness (Efektivitas), Setiap algoritma harus efektif, langkah-langkah algoritma
dikerjakan dalam waktu yang wajar.
Berikut merupakan hasil algoritma berdasarkan studi kasus yang kami dapatkan.
Langkah 1: Mulai.
Langkah 2: Masukkan username dan password.
Langkah 3: Apakah username dan password sudah sesuai? Jika iya lanjut ke langkah 7,
jika tidak lanjut ke langkah 4.
10
Langkah 4: Apakah username dan password yang dimasukkan sudah salah sebanyak 3
kali? Jika iya lanjut ke langkah 5, jika tidak lanjut ke langkah 6.
Langkah 5: Menampilkan “Terminated” kemudian lanjut ke langkah 18.
Langkah 6: Menampilkan “Username atau Password Salah” kemudian kembali ke
langkah 2.
Langkah 7: Menampilkan tabel warna yang berisi daftar warna yang tersedia serta
komposisi dari setiap warna.
Langkah 8: Apakah anda ingin menambahkan warna baru untuk produksi cat? Jika iya
lanjut ke langkah 9, jika tidak lanjut ke langkah 13.
Langkah 9: Masukkan nama warna baru.
Langkah 10: Memasukkan komposisi warna baru yang diperlukan.
Langkah 11: Menampilkan data warna baru beserta komposisinya.
Langkah 12: Apakah anda ingin kembali menambahkan warna baru? Jika iya lanjut ke
langkah 9, jika tidak lanjut ke langkah 13.
Langkah 13: Memasukkan warna yang ingin dipilih untuk proses penentuan komposisi
pencampuran cat.
Langkah 14: Memilih ukuran cat yang telah disediakan (2,5 L dan 5 L).
Langkah 15: Menghitung jumlah mililiter dari setiap warna primer yang dibutuhkan
untuk menghasilkan cat dengan ukuran yang dipilih menggunakan rumus
komposisi warna= presentase warna primer ×ukuran cat
Langkah 16: Menampilkan daftar warna yang dipilih beserta komposisinya.
Langkah 17: Menampilkan grafik lingkaran proporsi komposisi warna yang dipilih.
Langkah 18: Apakah anda ingin menentukan komposisi pencampuran warna lagi? Jika
iya lanjut ke langkah 7, jika tidak lanjut ke langkah 19.
Langkah 19: Selesai.
2.2. FLOWCHART
Flowchart adalah serangkaian simbol gambar yang terhubung dan menunjukkan aliran
dari suatu proses terhadap data yang terlibat didalamnya (Suarga, 2003:6). Flowchart
membantu analis dan programmer untuk memecahkan masalah ke dalam segmen-segmen
yang lebih kecil dan membantu dalam menganalisis alternatif-alternatif lain dalam
pengoperasian. Flowchart digunakan untuk menggambarkan prosedur sistem, baik sistem
berjalan ataupun sistem yang diusulkan. Menurut Rachmat (2010), pada saat akan
11
menggambar suatu flowchart, analisis sistem atau programmer dapat mengikuti pedoman
sebagai berikut.
1. Flowchart sebaiknya digambar dari atas ke bawah dan mulai dari bagian kiri dari
suatu halaman.
2. Kegiatan di dalam flowchart harus dijelaskan dengan jelas.
3. Harus ditunjukkan dari mana kegiatan akan dimulai dan di mana akan berakhirnya.
4. Masing-masing kegiatan dalam flowchart sebaiknya menggunakan suatu kata yang
mewakili suatu pekerjaan.
5. Masing-masing kegiatan di dalam flowchart harus di dalam urutan yang tepat.
6. Kegiatan yang terpotong dan akan dilanjutkan di tempat lain harus ditunjukkan dengan
jelas menggunakan simbol penghubung.
Berikut ini merupakan flowchart hasil dari penentuan komposisi pencampuran warna
untuk produksi cat PT Losik Paint yang kami dapatkan.
Gambar 2. 1 Flowchart Penentuan Komposisi Pencampuran Warna untuk Produksi Cat PT Losik Paint
12
tugas tertentu. Setelah menyusun algoritma dan flowchart, maka langkah selanjutnya
adalah melakukan pembuatan program yang disesuaikan dengan algoritma dan flowchart
yang telah dibuat. Program ini nantinya akan menerjemahkan bahasa pemrograman yang
telah disusun kepada manusia (user) sehingga mudah digunakan.
Berikut ini merupakan tabel kebutuhan program dari studi kasus yang kami dapatkan.
Selain itu, pada tahap perancangan program kami juga menentukan decomposition tree
diagram. Decomposition tree diagram yaitu diagram pohon yang menggambarkan hierarki
dari sistem informasi yang diurai menjadi proses-proses bisnis yang lebih rinci di level
lebih rendah (Rahman, 2016). Decomposition tree diagram dapat mengetahui fungsi bisnis
serta dapat mempermudah dan penentuan proses-proses bisnis dalam suatu sistem. Level
paling tinggi berisikan sistem yang akan diuraikan proses bisnisnya dan dilanjutkan hingga
level paling bawah dalam sistem tersebut. Berikut adalah decomposition tree diagram yang
menunjukkan hasil decomposistion tree diagram dari studi kasus yang kami dapatkan.
13
0
Penentuan Komposisi
Warna PT Losik Paint
1.
2. 3.
Proses pemasukkan
Proses dalam Program Menampilkan Output
input
3.1
1.1 2.1
Menampilkan
Memasukkan nama Menambahkan warna
komposisi warna yang
warna baru baru
dibutuhkan
1.2
2.2 3.2
Memasukkan
Menghitung Komposisi Menampilkan hasil
persentase komposisi
warna warna
warna baru
1.3 3.3
Memasukkan nama Menampilkan grafik
warna yang akan lingkaran proporsi tiap
dihitung warna
1.4
Memilih ukuran cat
14
BAB III
DESAIN PROGRAM
Pada bab 3 akan dibahas mengenai listing code program yang dibuat dari studi kasus
yang telah diberikan. Selain itu juga, akan dibahas mengenai output yang dihasilkan
program, testing yang dibagi menjadi proses verifikasi dan validasi, serta akan dibahas
pula mengenai analisis rancangan program.
15
menu_utama()
else:
login_error_label.config(text="Username atau password
salah.")
login_window.pack(pady=10)
window.mainloop()
welcome_page(userpass)
Kode tersebut merupakan sebuah fungsi yang dijalankan ketika ingin menjalankan
proses login. Ketika dijalankan kode ini akan meminta input dari user, yaitu username dan
password. Jika user memasukkan input-an yang sesuai maka akan ditampilkan, “ Selamat
datang di PT LOSIK Paint!” dan akan meneruskan ke proses selanjutnya , jika tidak user
akan diminta untuk memasukkan input-an kembali.
Berikut ini merupakan flowchart untuk menampilkan tabel warna.
Berikut ini merupakan contoh listing code untuk menampilkan tabel warna.
def tampilkan_tabel2(frame):
judul_tabel = tk.Label(frame, text="TABEL DAFTAR KOMPOSISI CAT
TERSEDIA", font=("Arial", 14, "bold"))
16
judul_tabel.grid(row=0, column=0, columnspan=5, pady=10)
tabel_colors = []
tabel_colors.append(["Warna", "Kuning (%)", "Biru (%)", "Merah (%)",
"Putih (%)"])
for key in colors:
color_name = colors[key]["nama"]
color_comp = colors[key]["komposisi"]
putih_comp = color_comp[3] if len(color_comp) > 3 else color_comp[-
1]
tabel_colors.append([color_name, color_comp[0], color_comp[1],
color_comp[2], putih_comp,])
for row_idx in range(len(tabel_colors)):
for col_idx in range(len(tabel_colors[0])):
label_tabel = tk.Label(frame, text=tabel_colors[row_idx]
[col_idx], relief="ridge", width=20, justify="left")
Berikut ini merupakan contoh listing code untuk input warna baru.
def tambah_warna():
global warna_dropdown
if not entry_nama_warna.get() or not
all(entry_komposisi_warna[primer].get() for primer in colors["dark olive
green"]["primer"]):
17
messagebox.showerror("Error", "Silahkan lengkapi semua input
untuk menambahkan warna")
return
if not validasi_komposisi():
return
nama_warna = entry_nama_warna.get().title()
primers = colors["dark olive green"]["primer"]
komposisi = []
for primer in primers:
komposisi_warna = float(entry_komposisi_warna[primer].get())
komposisi.append(komposisi_warna)
Kode tersebut adalah fungsi dengan nama tambah_warna(), yang digunakan ketika
ingin memasukkan warna baru. Fungsi ini akan meminta user untuk memasukkan nama
warna baru serta komposisi masing-masing warna primer pada warna tersebut. Setelah itu,
warna baru tersebut akan dimasukkan ke dalam dictionary colors dan akan ditambahkan ke
tabel warna yang telah tersedia.
Berikut ini merupakan flowchart untuk meng-input warna yang dihitung.
Berikut ini merupakan contoh listing code untuk meng-input warna yang dihitung.
warna_label = tk.Label(sub_frame, text="Pilihan Warna:")
warna_label.grid(row=2, column=0, padx=5, pady=5, sticky="W")
warna_input = tk.StringVar(sub_frame)
warna_input.set("")
warna_dropdown = tk.OptionMenu(sub_frame, warna_input, *colors.keys())
warna_dropdown.grid(row=2, column=1, padx=5, pady=5, sticky="e")
Kode ini dijalankan untuk meminta nama warna yang telah tersedia kepada user. Saat
dijalankan, kode ini akan memperlihatkan warna yang telah tersedia di tabel warna, lalu
user akan memilih salah satu darinya. Selanjutnya, user juga akan diminta untuk memilih
ukuran warna yang diinginkan. Jika input-an user sesuai maka akan lanjut ke tahap
selanjutnya, jika tidak akan ditampilkan error notice.
Berikut ini merupakan flowchart untuk menghitung komposisi warna.
18
Gambar 3. 5 Flowchart menghitung komposisi warna
Berikut ini merupakan contoh listing code pada perhitungan komposisi warna.
total_komposisi = sum(komposisi)
faktor = sizes[ukuran] / total_komposisi
jumlah_warna = [round(k * faktor) for k in komposisi]
jumlah_total = sum(jumlah_warna)
faktor_koreksi = sizes[ukuran] / jumlah_total
jumlah_warna = [round(j * faktor_koreksi) for j in jumlah_warna]
persentase = [round((j/sizes[ukuran])*100, 2) for j in
jumlah_warna]
19
Gambar 3. 6 Menampilkan grafik lingkaran proporsi
Berikut ini merupakan contoh listing code penampilan grafik lingkaran proporsi.
def hitung_komposisi_dan_tampilkan_grafik():
root = tk.Tk()
global toplevel
toplevel = tk.Toplevel(root)
toplevel.title("Grafik Komposisi Warna")
toplevel.geometry("500x500")
hitung_komposisi_only()
tampilkan_grafikni(warna_input.get(), ukuran_input.get())
20
Berikut ini merupakan contoh listing code pada penampilan daftar komposisi warna.
filtered_labels = hitung_komposisi(warna_input.get(),
ukuran_input.get(), result_label)
if filtered_labels is not None:
nama = warna_input.get()
ukuran = ukuran_input.get()
primer, jumlah_warna = filtered_labels
result_label.configure(text=f"Jumlah komposisi cat {nama} yang
dibutuhkan untuk kebutuhan {ukuran} adalah:", font=("Arial", 12),
bg="white")
result_label.configure(justify="left", anchor="w")
for p, j in zip(primer, jumlah_warna):
result_label.configure(text=result_label.cget("text") + f"\
n- {p.capitalize()} = {j} ml", bg="white")
3.1.1 DESICION
Pengambilan keputusan adalah pemilihan alternatif perilaku (kelakuan) tertentu dari
dua atau lebih alternatif yang ada (George R. Terry).
Berikut ini merupakan contoh listing code decision di dalam program hitung
komposisi warna.
1. Login, pada proses login dilakukan pengecekan kondisi dengan menggunakan
statement if. Pengecekan kondisi ini bertujuan untuk memeriksa apakah username
yang dimasukkan oleh pengguna terdapat dalam variabel userpass, dan apakah
password yang dimasukkan sesuai dengan password yang terkait dengan username
tersebut dalam variabel userpass. Jika kondisi terpenuhi, langkah-langkah ke menu
utama akan dijalankan. Jika tidak, akan menampilkan pesan "Username dan Password
salah". Berikut ini merupakan flowchart dan listing code untuk menjalankan proses
login pada program.
21
Gambar 3. 8 Flowchart untuk decision pada proses login
2. Tambah warna, pada fungsi tambah warna memiliki dua elemen decision penting.
Pertama, program memeriksa apakah masukan nama warna tidak diisi atau ada entri
kosong dalam komposisi warna. Jika kondisi tersebut terpenuhi, program
menampilkan pesan error dan menghentikan eksekusi. Kedua, program memeriksa
hasil dari fungsi validasi komposisi. Jika hasilnya adalah false, program langsung
berhenti eksekusi. Dengan demikian, elemen-elemen decision ini membantu program
dalam mengambil keputusan berdasarkan kondisi input yang diberikan oleh pengguna.
Berikut ini merupakan flowchart dan listing code untuk menjalankan proses tambah
warna pada program.
22
Gambar 3. 9 Flowchart untuk decision pada tambah warna
Kode berikut adalah fungsi yang dipanggil ketika meminta input-an dari user.
def tambah_warna():
global warna_dropdown
# error handling revisi
if not entry_nama_warna.get() or not
all(entry_komposisi_warna[primer].get() for primer in colors["dark
olive green"]["primer"]):
messagebox.showerror("Error", "Silahkan lengkapi semua input
untuk menambahkan warna")
return
if not validasi_komposisi():
Return
3. Validasi komposisi warna, pada proses tambah warna terdapat sebuah fungsi validasi
komposisi warna baru yang ingin ditambahkan. Pada fungsi validasi komposisi,
terdapat satu elemen decision yang memiliki kegunaan untuk memastikan bahwa total
komposisi warna yang dimasukkan oleh pengguna benar-benar mencapai 100%. Jika
total komposisi warna tidak sesuai, pesan error akan ditampilkan untuk memberi tahu
pengguna tentang kesalahan tersebut. Dengan menggunakan elemen decision ini,
fungsi validasi komposisi dapat memberikan validasi yang diperlukan dan
menghasilkan nilai yang akan digunakan dalam elemen decision pada fungsi tambah
warna sebelumnya. Berikut ini merupakan flowchart untuk decision validasi
23
komposisi warna dan listing code untuk menjalankan proses tambah warna pada
program.
Kode berikut adalah kode yang dijalankan dalam proses validasi komposisi warna :
def validasi_komposisi():
total_komposisi = 0
for primer in colors["dark olive green"]["primer"]:
komposisi = entry_komposisi_warna[primer].get()
total_komposisi += float(komposisi) if komposisi else 0
if total_komposisi != 100:
messagebox.showerror("Error", "Total komposisi warna harus
100%")
return False
return True
3.1.2 LOOPING
Perulangan atau looping adalah sebuah proses program dimana setiap perintah
instruksi dapat dijalankan secara berulang dengan kondisi tertentu (Wolfman, 2013).
Didalam program perhitungan komposisi warna, terdapat 2 elemen perulangan yakni
pada fungsi update_dropdown_warna() fungsi update_tampilan_tabel(). Fungsi
update_dropdown_warna() menggunakan pengulangan untuk menambahkan setiap elemen
warna dalam dictionary colors sebagai item menu pada dropdown warna. Sementara itu,
fungsi update_tampilan_tabel() menggunakan pengulangan untuk menghapus elemen-
elemen non-header dalam tampilan tabel dengan memeriksa baris grid dari setiap elemen
label. Kedua fungsi tersebut berperan dalam mengatur tampilan dropdown warna dan tabel
agar sesuai dengan data yang ada dan interaksi pengguna. Berikut ini merupakan kode
fungsi untuk meng-update dropdown warna dan tampilan tabel.
def update_dropdown_warna():
24
global warna_dropdown
if warna_dropdown is None:
return
warna_dropdown["menu"].delete(0, "end")
for color in colors:
warna_dropdown["menu"].add_command(label=color.title(),
command=lambda c=color: warna_input.set(c))
def update_tampilan_tabel():
for label in frame_tabel.grid_slaves():
if int(label.grid_info()["row"]) > 0:
label.grid_forget()
25
Gambar 3. 11 Flowchart untuk penggunaaan module dan library
Berikut ini merupakan contoh listing code library di dalam program kami. Kode
berikut menggunakan library matplotlib.
komposisi_text = "\n".join([f"{p.capitalize()}: {j} ml" for p, j in
zip(primer_labeled, ukuran_labeled)])
fig, ax = plt.subplots(figsize=(6,5))
labels = primer_labeled
persentase = persentase_labeled
ukuran = ukuran_labeled
Kode tersebut menggunakan beberapa module dan library, yaitu matplotlib.pyplot dan
plt dari modul matplotlib. Modul matplotlib.pyplot adalah modul yang menyediakan fungsi
dan alat untuk membuat dan menampilkan grafik lingkaran yang menunjukkan komposisi
warna yang telah dipilih oleh user dengan komposisi warna primernya masing-masing. .plt
digunakan untuk memanggil fungsi-fungsi tersebut dengan sintaks yang lebih singkat.
26
1. Login
Pada tampilan awal program CLI, terdapat fungsi login yang mana meminta
user untuk memasukkan username dan password. Apabila username dan
password yang dimasukkan benar, maka akan muncul teks pemberitahuan bahwa
login berhasil dan user akan dapat melanjutkan aktivitas selanjutnya melalui menu
utama. Berikut ini merupakan tampilan menu login pada program CLI apabila
user berhasil login.
2. Halaman Utama
Pada halaman utama, terdapat tabel yang menampilkan daftar komposisi
warna yang tersedia beserta presentase warnanya. Kemudian terdapat juga
pilihan menu utama yang terdiri dari hitung komposisi, tambah warna, dan
keluar. Apabila user ingin melakukan proses hitung komposisi warna, maka user
dapat memasukkan angka 1 di bagian pilih menu. Apabila user ingin melakukan
proses tambah warna, maka user dapat memasukkan angka 2 di bagian pilih
menu. Apabila user ingin keluar dari sistem, maka user dapat memasukkan
27
angka 3 di bagian pilih menu. Berikut ini merupakan tampilan menu utama
setelah user berhasil login.
3. Hitung Komposisi
Pada pilihan menu 1 hitung komposisi, user akan diarahkan ke proses untuk
melakukan perhitungan komposisi warna. Pada proses hitung komposisi, disajikan
daftar warna yang tersedia kemudian user dapat memasukkan warna yang ingin
dihitung komposisi dan juga ukuran cat yang diinginkan. Sistem akan melakukan
proses perhitungan kemudian menampilkan kepada user komposisi warna yang
telah dipilih dalam bentuk satuan mililiter dan juga menampilkan grafik proporsi
persentase masing-masing komposisi warnanya dari warna dan ukuran cat yang
telah dipilih. Berikut ini merupakan tampilan menu hitung komposisi beserta hasil
perhitungan hitung komposisi warna yang diinginkan dan menampilkan grafik
presentase komposisi warna.
28
Gambar 3. 16 Output Tampilan Grafik
4. Tambah Warna
Pada menu pilihan 2, user dapat menambahkan warna baru yang sebelumnya
belum tersedia di daftar warna sistem. Pada proses pertama tambah warna baru,
user diminta memasukkan nama warna baru beserta presentase komposisi masing-
masing warnanya. Apabila user telah selesai menambahkan warna, maka warna
akan disimpan oleh sistem kemudian ditampilkan di tabel daftar warna tersedia
pada halaman utama dan juga menampilkan grafik proporsi persentase masing-
masing komposisi warnanya dari warna dan ukuran cat yang telah dipilih Berikut
ini merupakan menu tambah warna beserta proses dan juga hasil tambah warna
baru.
29
Gambar 3. 17 Output Daftar Warna Setelah Tambah Warna Baru
5. Keluar
Apabila user merasa telah cukup menggunakan program tersebut, maka user
dapat memilih menu nomor 3 yang akan mengarahkan user untuk keluar dari
program dan menutup semua proses yang telah dilakukan sebelumnya. Berikut ini
tampilan menu aapabila user memilih untuk keluar dari program.
30
3.2.2 GRAPHICAL USER INTERFACE
Graphical User Interface (GUI) adalah tipe antarmuka yang digunakan oleh pengguna
untuk berinteraksi dengan sistem operasi melalui gambar grafik, kon, dan menggunakan
perangkat penunjuk (pointing device) seperti mouse atau track ball (Lastiansah, 2012).
Berikut ini merupakan bentuk-bentuk output dari program GUI .
1. Login
Pada tampilan awal program GUI, terdapat fungsi login yang mana meminta user
untuk memasukkan username dan password. Apabila username dan password yang
dimasukkan benar, maka user akan diarahkan menuju halaman menu utama. Berikut
merupakan tampilan halaman login di program PT LOSIK Paint.
Namun, apabila user tidak memasukkan username dan password dengan benar,
akan muncul teks pemberitahuan bahwa username atau password salah dan user
diminta untuk memasukkan kembali username dan password sebanyak 3 kali. Apabila
user salah memasukkan username dan password sebanyak 3 kali, maka user akan
otomatis keluar dari sistem. Berikut ini merupakan tampilan apabila login gagal
dikarenakan user salah memasukkan username atau password.
2. Halaman Utama
31
Pada halaman utama, terdapat tabel yang menampilkan daftar komposisi warna
yang tersedia beserta presentase warnanya. Kemudian terdapat juga widget hitung
komposisi, tambah warna, dan keluar. Berikut ini merupakan tampilan halaman menu
utama apabila user telah berhasil login.
3. Tambah Warna
Pada proses pertama tambah warna baru, user diminta memasukkan nama warna
baru beserta presentase komposisi masing-masing warnanya. Apabila user telah selesai
menambahkan warna dan menekan button tambahkan warna, maka warna akan
disimpan oleh sistem kemudian terdapat pop up box pesan pemberitahuan yang
menginformasikan bahwa warna baru telah berhasil disimpan dan warna tersebut akan
ditampilkan di tabel daftar warna tersedia pada halaman utama. Berikut ini merupakan
tampilan menu tambah warna beserta notifikasi pemberitahuan apabila warna telah
berhasil ditambahkan dan output hasil menambahkan warna baru yang tersimpan
didalam tabel.
32
Gambar 3. 23 Output Memasukkan Warna Baru Beserta Komposisinya
4. Hitung Komposisi
Pada proses hitung komposisi, user dapat memilih warna yang ingin dihitung
komposisi dan juga ukuran cat yang diinginkan. Pada saat button hitung komposisi
ditekan, sistem akan melakukan proses perhitungan kemudian menampilkan window
baru kepada user berupa hasil perhitungan komposisi warna yang telah dipilih dalam
bentuk satuan mililiter dan apabila user juga menekan button tamplilkan grafik maka
program akan menampilkan window grafik proporsi persentase masing-masing
komposisi warnanya dari warna dan ukuran cat yang telah dipilih. Berikut ini
merupakan menu untuk melakukan hitung komposisi serta button hitung komposisi
33
dan button tampilkan grafik yang akan menampilkan hasil perhitungan komposisi
warna pada window baru.
5. Keluar
Apabila user merasa telah cukup menggunakan program tersebut, maka user dapat
menekan button keluar yang akan mengarahkan user untuk keluar dari program dan
34
menutup semua proses yang telah dilakukan sebelumnya dan kemudian
mengembalikan user ke halaman login program. Berikut ini merupakan button untuk
keluar dari program yang akan mengarah ke halaman login.
3.3 TESTING
Testing adalah tiap aktivitas yang digunakan untuk dapat melakukan evaluasi suatu atribut atau
kemampuan dari program atau sistem dan menentukan apakah telah memenuhi kebutuhan atau
hasil yang diharapkan (MHetzel, 1983). Terdapat beberapa tahapan testing yang harus dilakukan
untuk mengetahui perbandingan antara keadaan yang terdapat dengan keadaan yang diinginkan.
Tahapan tersebut terbagi menjadi verifikasi dan validasi.
3.3.1 VERIVIKASI
Verifikasi model yang terkomputerisasi (computerized) memastikan bahwa pemrograman
komputer dan implementasi model konseptual adalah benar (Sargent, 1999). Verifikasi bertujuan
untuk membuktikan bahwa sesuatu ada atau benar, atau untuk memastikan bahwa sesuatu adalah
benar.
Kami akan menguji verifikasi pada bagian login dari program yang kami buat. Berikut ini
merupakan flowchart dari proses verifikasi login pada program.
35
Gambar 3.29 Flowchart Login
Dibawah ini merupakan algoritma dari program penentuan komposisi pencampuran warna
untuk produksi cat pada PT LOSIK PAINT.
Kemudian akan kami tampilkan pula listing code login dari program penentuan komposisi
pencampuran warna untuk produksi cat pada PT LOSIK PAINT.
def login(userpass):
print("Selamat datang di PT LOSIK Paint!")
coba = 0
while coba < 3:
36
username = input("Masukkan Username Anda: ")
password = input("Masukkan Password Anda: ")
if coba == 3:
print("Anda telah gagal mencoba login sebanyak 3
kali. Aplikasi akan ditutup.")
return False
Terakhir akan kami tampilkan output yang dihasilkan dari program kami.
Dari beberapa lampiran yang sudah ditampilkan diatas baik pada CLI, algoritma, maupun
flowchart, terlihat bahwa kita dalam menjalankan program diberi tiga kali kesempatan dalam
memasukkan username maupun password. Kemudian setelah login akan ditampilkan tabel sesuai
dengan lampiran diatas. Maka, terbukti bahwa program kami sudah terverifikasi.
37
3.3.2 VALIDASI
Mengutip M Agus J Alam dalam buku Belajar Sendiri Mengolah Database dengan Borland
Delphi 7, validasi adalah proses pemeriksaan untuk mengetahui suatu data valid (sah) atau tidak.
Berikut merupakan tabel komposisi warna dari sistem yang akan di validasi.
Tabel 3. 1 Komposisi Warna
Berikut merupakan output graphic user interface dari program yang akan di validasi.
Berikut ini merupakan listing code output dari sistem yang akan divalidasi pada fungsi
hitung komposisi.
def hitung_komposisi(warna, ukuran, result_label):
nama = colors[warna]["nama"]
primer = colors[warna]["primer"]
komposisi = colors[warna]["komposisi"]
total_komposisi = sum(komposisi)
faktor = sizes[ukuran] / total_komposisi
jumlah_warna = [round(k * faktor) for k in komposisi]
jumlah_total = sum(jumlah_warna)
faktor_koreksi = sizes[ukuran] / jumlah_total
jumlah_warna = [round(j * faktor_koreksi) for j in jumlah_warna]
38
komposisi_text = "\n".join([f"{p.capitalize()}: {j} ml" for p, j in
zip(primer, jumlah_warna)])
result_label.configure(text=f"Jumlah komposisi cat {nama} yang
dibutuhkan untuk kebutuhan {ukuran} adalah:", font=("Arial", 8), bg="white")
result_label.configure(justify="left", anchor="w")
for p, j in zip(primer, jumlah_warna):
result_label.configure(text=result_label.cget("text") + f"\n-
{p.capitalize()} = {j} ml", bg="white")
return [primer, jumlah_warna]
Dalam keseluruhan, fungsi ini menghitung dan menampilkan informasi komposisi cat
berdasarkan warna dan ukuran yang diberikan, serta mengatur tampilan label untuk
menampilkan informasi tersebut dalam antarmuka pengguna. Untuk membuktikan apakah
informasi yang ditampilkan valid (sah) akan dibandingkan dengan perhitungan manual
sebagaimana berikut.
Persentase ¿
Jumlah Bagian=Persentase (%) × Jumlah Keseluruhan ÷ 100 %
Keterangan:
Jumlah Bagian = Komposisi warna yang dibutuhkan
Jumlah Kesuluruhan = Ukuran cat yang dipilih
Sebagai contoh pada gambar 3.3.2 warna yang dipilih adalah spring green dengan
ukuran 5L dengan komposisi 50% kuning dan 50% biru, maka perhitungan manual dari
sistem adalah sebagaimana berikut.
Komposisi warna kuning :
5000 ml ×50 % ÷100 %=2500 ml
Komposisi warna biru :
5000 ml ×50 % ÷100 %=2500 ml
Informasi yang ditampilkan oleh program dengan perhitungan manual
menunjukkan data yang sama yaitu Komposisi warna kuning 2500ml dan komposisi
warna biru 2500ml, dapat disimpulkan informasi yang ditampilkan oleh sistem
adalah valid (sah).
39
3.4 ANALISIS RANCANGAN SISTEM
Analisis adalah proses penyelidikan yang sistematis terhadap bahan-bahan yang ada,
data yang diperoleh, atau fakta yang ditemukan, untuk menemukan pola, hubungan, atau
makna yang mungkin terkait dengan pertanyaan penelitian (Robert K. Yin , 2009)
Menurut Sommerbille dalam buku Agus Mulyanto (2009:259) proses perancangan
bisa melibatkan pengembangan beberapa model sisrem pada tingkat abstraksi yang
berbeda-beda. Menurut Fatansyah (2015:11), bahwa Sistem adalah sebuah tatanan
(keterpaduan) yang terdiri atas sejumlah komponen fungsional (dengan satuan fungsi dan
tugas khusus) yang saling berhubungan dan secara Bersama-sama bertujuan untuk
memenuhi suatu proses tertentu.
Sebuah sistem dibuat untuk mencapai suatu tujuan tertentu. Penentuan komposisi
pencampuran warna untuk produksi cat pada LOSIK Paint memiliki tujuan untuk
mengubah sistem peng-input-an manual menjadi sistem otomatis yang dilakukan oleh
Product Analyst LOSIK Paint. Tahapan awal pembuatan program dimulai dengan
membuat algoritma. Algoritma dibuat agar deskripsi langkah dapat dijelaskan secara runtut
dan sistematis. Kemudian, dilanjutkan oleh tahap pembuatan flowchart. Flowchart
dibuat*666666666 dengan simbol-simbol yang memiliki arti tertentu. Flowchart dibuat
untuk menggambarkan suatu alur pengerjaan agar pengguna dapat memahami alur
algoritma lebih jelas menggunakan simbol tertentu. Simbol-simbol tersebut dihubungan
dengan panah untuk memudahkan programmer dalam membaca alur flowchart dan
membuat program. Setelah tahap pembuatan algoritma dan flowchart, ada tahapan untuk
membuat program.
Hal pertama yang dilakukan untuk membuat program adalah membuat algoritma
deskriptif yang berfungsi untuk merencanakan logika program dan mengiidentifikasi jika
ada kekurangan di awal, serta flowchart yang menggambarkan serta memvisualisasikan
langsung alur dari program itu sendiri. Langkah berikutnya adalah pembuatan program
yang berisikan fitur login, tabel daftar komposisi cat, fitur penambahan warna baru,
menghitung komposisi dengan dua ukuran cat lalu penampilan grafik lingkaran untuk
melihat proporsi warna primer. Pada bagian login, pengguna memasukkan username dan
password yang telah terdaftar. Terdapat sebanyak 3 kali kesempatan untuk memasukkan
username dan password yang sesuai sebelum menampilkan tulisan “Terminated”. Setelah
memasukkan pasangan username dan password yang sesuai, program akan melanjutkan ke
menu utama. Pengguna akan memilih salah satu dari daftar pada menu utama. Apabila
pengguna ingin menambahkan sebuah warna baru, maka pengguna dapat langsung
40
mengetikkan nama warna serta komposisi warna primer di kolom yang tersedia. Nantinya,
warna yang ditambahkan akan langsung terdaftar di tabel warna yang telah tersedia.
Apabila pengguna memilih untuk menghitung komposisi warna, maka langkah pertama
yang dilakukan adalah memilih ukuran cat dan warna cat. Terdapat 2 ukuran cat yaitu 2,5L
dan 5L dengan total persentase warna nantinya akan 100%. Selanjutnya, sistem akan
menghitung komposisi warna dengan menggunakan rumus komposisi warna = presentase
warna primer x ukuran cat. Pada tahap selanjutnya, pengguna bisa mengakses grafik
lingkaran proporsi warna agar dapat melihat berapa presentase setiap warna yang ada di cat
tersebut.
Program penentuan komposisi warna pada LOSIK Paint memiliki kelebihan dan
kekurangan. Kelebihan dalam program ini yaitu dapat menampilkan secara detail rincian
proporsi warna primer pada cat dalam bentuk mililiter dan persen. Kekurangan pada sistem
ini adalah tidak dapat melakukan banyak input warna dalam sekali login.
41
BAB IV
PENUTUP
Pada bab 4 ini akan dibahas mengenai kesimpulan yang diambil dari pembuatan
algoritma, flowchart, dan program yang dibuat dari studi kasus yang telah diberikan.
Selain itu, juga akan dibahas saran kedepannya mengenai program yang telah dibuat
kedepannya.
4.1 KESIMPULAN
Robert K. Yin dalam buku "Case Study Research: Design and Methods" (2009):
Kesimpulan adalah hasil penarikan akhir atau ringkasan dari temuan atau analisis yang
dibuat berdasarkan data yang dikumpulkan dalam penelitian.
Kesimpulan merupakan sebuah hasil akhir dimana berisi jawaban dari tujuan yang
ingin dicapai. Berdasarkan definisi kesimpulan tersebut, kesimpulan yang dapat diberikan
untuk pembuatan program penentuan komposisi pencampuran warna untuk produksi cat
pada LOSIK Paint adalah sebagai berikut.
1. Algoritma deskriptif dan flowchart membantu memvisualisasikan alur kerja program
yang dibuat serta memastikan bahwa program berjalan dengan logika yang benar.
2. Program melakukan proses secara manual dan bekerja untuk mendapatkan hasil yang
ingin dicapai.
3. Diagram lingkaran membantu untuk memvisualisasikan dalam mengetahui proporsi
komposisi warna.
4.2 SARAN
Lexy J. Moleong dalam buku "Metodologi Penelitian Kualitatif" (2017): Saran adalah
penilaian atau rekomendasi yang diberikan berdasarkan hasil penelitian untuk membantu
mengatasi masalah yang diidentifikasi atau meningkatkan situasi yang ada.
Saran merupakan suatu hal yang penting dalam laporan atau karya ilmiah dengan
maksud memberikan suatu masukan, perbaikan dan harapan agar kedepannya menjadi
lebih baik. Berdasarkan definisi saran tersebut, saran yang dapat diberikan untuk
pembuatan program penentuan komposisi pencampuran warna untuk produksi cat pada
LOSIK Paint adalah sebagai berikut:
1. Warna baru ditingkatkan variasinya yang tidak dibatasi berdasarkan dari komposisi
42
warna primer yang disediakan.
2. Ukuran cat lebih diperbanyak sehingga tidak dibatasi hanya pada dua ukuran yaitu 2,5
L dan 5 L.
43
DAFTAR PUSTAKA
Habibi, M. (2011). Analisis Prosedur Sirkulasi Buku Perpustakaan di SMK Bina Warga Lemahabang
Kabupaten Cirebon. Bandung: Perpustakaan UNIKOM.
Konsep Dasar dan Pengertian Sistem. (2018, October 2). Retrieved from BPAKHM:
http://bpakhm.unp.ac.id/konsep-dasar-dan-pengertian-sistem/
Kuncoro, A. A. (2022, November 22). Fungsi, Cara Kerja & Contoh Algoritma Pemrograman.
Retrieved from Universitas Stekom:
https://teknik-informatika-s1.stekom.ac.id/informasi/baca/Fungsi-Cara-Kerja-Contoh-
Algoritma-Pemrograman/6b799bd10e267d2a5adfbc37f00475138a14d5f7
Setiawan, R. (2021, agustus 4). Flowchart Adalah: Fungsi, Jenis, Simbol, dan Contohnya. Retrieved
from dicoding: https://www.dicoding.com/blog/flowchart-adalah/
Wijaya, C. (1992). Upaya Pembaharuam dalam Pendidikan dan Pengajaran. Bandung: Remaja
Rosda.
44
LAMPIRAN
45